I was told that we are not allowed to do this. Just wondering why. To me certain of these challenges are overemphasized and other subjects would be better.
I sure could be wrong but I am open to an explanation why I am wrong. I could be missing something.
But it seems to me, to help other people and myself, that we should be allowed to discuss these matters.
If not there should be something in the guidelines that says we cannot ask for the reasoning behind certain challenges.
Well I guess that could have been conveyed to me in a more collegial manner than what it was.
I was reading a question a camper had about this complicated data manipulation in JS and wondered why this is so emphasized. i commented in that thread that it seemed to be not needed. That seemed to me to be the best place to discuss it. Obviously since I was not allowed to post in that thread no one can see the code example and why others might think it is not necessary.
Do YOU feel all this emphasis on JS data manipulation and arrays is really used that much. I have not seen that. I sure am open to anyone showing me how I am wrong and seeing this incorrectly.
But to call bringing up this subject âa rantâ is a very unkind way of responding in my opinion.
I do not think it was âcompletely off topicâ. I see people here struggling over these trivial puzzles when they could be building real websites. Seems that FCC moderators do not want posters to indulge in critical thinking.
I didnât see the original posts referred to so I donât know which ones you mean by âcertain challengesâ, but you need to be able to competently manipulate data if you want to become a professional developer. An array is a fundamental data type in many programming languages, including JS.
If youâre only interested in UI design rather than programming per se, you can probably get away with not learning too much about this stuff, though itâs still useful to understand at least the basics.
Well that is my point: since I am not allowed to post my comment in the thread that where I saw the situation it is very hard to explain.
I do not think that knowing how to solve these puzzles will help you to get a job coding. There is a big difference between a âpuzzleâ and and exercise which trains a person in a certain technique or concept.
âyou need to be able to competently manipulate data if you want to become a professional developer.â
you do not see how your comment is circular logic?? think about the comment a bit.
I think it can help to think in a more âdevelopingâ way, like you were already told; I donât think the specific algorithms are necessary in every front-end-exclusive-job but they even help by just forcing the user to go and read (or ask) about stuff that he doesnât know about, which is a very important skill (knowing what to search, that is).
Also, they give a sense of satisfaction when solved which, again, I think itâs important to a people state of mind. It keeps them going.
With that said, there is a thread from a user who got a job focusing on projects instead of algorithms; it all depends on what you want to do and what you are good at. There are people who suck at algorithms (me included) but excel in design and there are people who, instead, are a natural at algorithms; there are jobs for both those kind of people.
From my point of view, FCC algorithms challenges are just that. Challenges. You are not forced to do them and there is no indication that being good at them will grant you a job but they can help to, well, challenge yourself, think, and maybe learn something you didnât already know.
Well my point is that FCC in general and the posters I see here put a lot of emphasis on this âpuzzle solvingâ.
And I think there are many other ways to learn these concepts beyond these puzzles. It is interesting to me that so many will stick to defending this type of pedagogy without question.
I guess what I would like to say to some of these campers who express spending âhoursâ trying to solve these puzzles is to move on quickly.
I think a small part of webdev is concerned with this intense data manipulation. I know people will come back and say âyou cannot be a competent developer without this skill!â and give no logical reason why they believe that. It is sort of like a maxim: look before you leap, he who hesitate is lost etc etc.
And is there really that many open spots where a mediocre âdeveloperâ can get a job? I think you have to be in the top 20% just to get work. The competition is fierce and I read stories of people who are broke and almost homeless pinning their last hopes on âkeep on codingâ in the quest they will get a job. I read there are only about 150k webdev jobs in the USA and really few openings. And I just pity these campers busting their brains trying to solve petty puzzles.
But I think over all FCC is a very good concept and website. VERY GOOD! But I do not think it should shun criticism.
Why not cut-and-paste from the other thread and simply start a new thread focused on the angle you wish to take the discussion in? Seems like a simple solution to meâŚ
If youâre talking about the algorithm challenges, theyâre designed as simplified applications of fundamental programming concepts (string manipulations, filtering data, conditional logic, etc.)
For example: itâs unlikely youâll ever need to make a Pig Latin generator, but performing similar operations on string data is very common. Letâs say you have an online fruit store. You might want to output natural-language strings as confirmation messages: "Successfully added ${quantity} ${fruit} to your cart."
// pseudocode
if quantity == 1 and fruit begins with vowel:
write "an" and singular form of fruit
else:
write quantity directly and plural form of fruit
Youâll notice that the vowel check is very similar to the one you need for the âuselessâ Pig Latin generator challenge.
When âthis skillâ refers to data manipulation, itâs not so much a maxim as a tautology. Itâs like saying âyou canât be a competent farmer without understanding crops or livestockâ.
have many years have you spent programming? esp on webdev?
I am sorry I just disagree with the amount of JS puzzles presented on FCC but I thought the html and css and bootstrap sections were excellent.
We used to teach Latin because they thought that language was the ârootâ of English. Thank Darwin they finally got enlightened.
Part of the mystique of teaching is to make things seems mysterious and then come up with the oh so clever answer. A teacher who breaks things down simply will not seem that divine.
Wow you missed the whole latin concept. Anyhow I guess we have to agree to disagree.
Do you get the difference between solving a puzzle and solving a data manipulation problem.
Just curious: do you think solving those word problems like 2 trains going in opposite directions at 5 miles apart when will they collide are useful in real life?
Taking some data and manipulating them. Taking a specific transformation from [some datum] to another form, and generalising that so it works for many different similar data. Gluing together lots of these trivial, simple parts into more complex parts. Thatâs at the core of what programming is, why programming is useful. Programming is about dealing with complexity: you keep chopping a problem up until it is just a collection of these tiny âtrivial puzzlesâ, then you solve them one by one.
The way youâre going about this is going to get peoples hackles up, because youâre criticising contributorsâ work without any attempt to be constructive. What do you mean by âreal websitesâ? Itâs so broad a request as to be close to meaningless*. With a specific goal, starting at that high a level is viable, but thatâs an entirely different kind of curricula to what FCC offers. These courses exist all over the place - focussing on building out a single application from start to finish, gradually exploring the concepts (the Ruby on Rails tutorial book is a good example). But those donât teach the basics of programming, of a programming language, which is what FCC is trying to do with JS. Thatâs not to say it doesnât fail in some respects, but writing a curriculum that works is a seriously difficult thing to do.
* Static, one page advert sites, like portfolio-style things? Multipage traditional sites? Product/News sites with huge numbers of discrete but similarly-themed navigable endpoints? Informational sites? Interactive sites? Line-of-business applications? Learning sites? Single-page, javascript-heavy app-like sites? Apps? If so, what kind of apps? Multiuser apps, like chatrooms? Twitter-like sites? Forums like this one? Productivity apps like Jira? Calculator apps? Games? Why just websites? Why not command-line applications? GUI applications? Embedded applications?
Like I said I thought the html, css and bootstrap sections were excellent. the over all concept is excellent. the forums are excellent. FCC is one of the best education sources I have run into.
BUT,
I still feel the JS part is not correct. i see so many people getting very discouraged around there. And for little reason because little of programming is based on those concepts.
Please think about the difference between a puzzle and a learning exercise. You really learn little by solving a puzzle.