Hacker News new | ask | show | jobs
by superbatfish 3112 days ago
This looks useful for learning the basic syntax of a new language, but the exercises look to be somewhat generic. Most of the exercises seem to be duplicated across languages.

Once you've mastered the basic syntax and control constructs of a language, it probably isn't worth your time to try a dozen different string manipulation exercises.

Perhaps this is beyond the scope of what this site is aiming for, but, I would hope for some exercises that help me understand what each language is commonly used for.

Potential examples:

- Swift: Learn to display and manipulate a GUI

- Ruby: Learn to write a web application

- Python/Julia/R: Learn to fit some data to a model

- Javascript: Learn to use a web framework

- Go: Learn to handle some network connections, concurrently. (I see they have one exercise that emphasizes concurrency, which is a step in the right direction.)

- Perl/PHP/Bash: Learn to cry bitter, sorrowful tears.

5 comments

>- Perl/PHP/Bash: Learn to cry bitter, sorrowful tears.

This is a common misconception. PHP tears are actually almost sweet and not bitter at all. The only saltiness comes from hearing the opinions of other programmers talk about your primary language.

I've written large, important things in C++, Kotlin, Scala, Java, Go, Javascript, PHP, etc... PHP in 2017 is great. PHP 7 is nice to use. Laravel is one of the best frameworks I've used. We have applications making millions of dollars a year running on a couple containers running Laravel 5 at my current job.

It's not a perfect language, but none are. I think some people are just jealous of how little setup/barrier to entry there is for PHP ;)

nobody is making fun of PHP out of jealousy
Genuinely interested - which app is making millions a year on Laravel?
It sounds like Pornhub is using PHP without a framework from this job posting or maybe they are just open minded.

https://www.reddit.com/r/forhire/comments/47fvmk/hiring_mont...

Publishing and ad management at a large publisher/adtech company
Yeah, no, not when your primary language still can't get lexical scope right, or distinguish between arrays and hashtables.
The lack of distinction between array vs hashtable isn't a big deal. Array as a map from integers to items works fine in practice. Even speaking of algorithm performance, it's fine for the uses you have on a web server. (Any other use of PHP is clearly insane. :) )

You speak like someone who hasn't worked much in PHP. When you do, a lot of quirks and flaws really bother you and slow down during everyday tasks, but the ones you mentioned aren't they.

> a lot of quirks and flaws really bother you and slow down during everyday tasks

Would you mind sharing a few that bother you? q

The fact that `false` isn't always false. Or that '0' or 0 or null are all 'false'.

There's a bunch more quirks in Zend Framework that I use every day that are much worse than all the rest of PHP though.

It occurred to me not long ago that hash tables are a general solution to indexing, and arrays are simply an optimization that you can apply when the proper constraints are in place. I'm happy to discover that it wasn't an original thought.
You can always use SPL for more strict datastructures (since 5.3): https://secure.php.net/manual/en/class.splfixedarray.php
PHP was my first bike, so to speak, so I can't knock it. Plus later I learned Slack was written in PHP, and I was like, whoa! I definitely think it gets a bad rap, mainly because it's almost too easy to use, correctly and incorrectly.
Cam someone explain why this comment was down-voted?
https://news.ycombinator.com/newsguidelines.html

Please don't comment about the voting on comments. It never does any good, and it makes boring reading.

I worked with a guy who uses PHP in 2017 and we never let him forget it.
It's probably so easy for him to forget because he is so busy shipping working apps...
I think what you're describing is cookbook territory, and perhaps there's a niche for that (though some languages like C or Python have a huge scope). I'd like to see a website that curated libraries with cool examples.

The problem with a cookbook, IMO, is that it doesn't really teach you anything about the language. You could write some really cool (short) image processing code using OpenCV, but would it really help you learn C++ or Python? I suppose you could pick the top 10 libraries/frameworks and go from there.

But.. on the exercise front, there are certainly nifty ways of solving problems in some languages that aren't available in others. Python, for instance, makes a lot of programming challenges very simple with the standard library. Similarly stuff gets a lot more readable if you use C++11 onwards.

I agree there isn't much point if you already know the language inside out (though it's useful to keep sharp), but if you're learning it can be a great way to discover useful constructs like Python's itertools.

I think the idea is that the best libraries for a language rely on the good parts of the language, so using those libraries will help you discover those.

For example, you have jQuery, which will expose you to DOM interactions, callback-style programming and even promises.

> - Javascript: Learn to use a web framework

ugh... How about "Learn about the DOM and web APIs"?

That is also a totally good suggestion but we don't have to be mean about other good suggestions.
I don't think it's a good suggestion for someone to learn a web app framework in a tutorial that teaches the basics of Javascript.
New web developers are really confused. Many of them don't see "programming" as a fundamental skill to be practiced and understood for its own value. Nor does it occur to to learn how, say, HTTP actually works. The resources that they tend to find on YouTube, Udemy etc are really not helping in this regard.
can you help with some proper resource links sir i am currently an aspiring UX/UI developer but i am thinking to go full stack front end dev....i want to make websites like these with some much response and wow factors ...btw in the below website links are these just templates parallaxed upon each other or these are coded to core?

EXAMPLES :

https://goo.gl/u1pzfK https://goo.gl/YpZuML https://goo.gl/xgP4T2

THESE PEOPLE JUST MADE WHATEVER THEY IMAGING AND BRING IT TO LIFE, I WANT TO MAKE SUCH THINGS CAN U HELP WITH SOME GUIDANCE SIR?

Honestly not sure if this is spam or an (excellent) sarcastic response to the GP. Leaning towards the former.
Doing the same beginner exercises in new language environments seems excellent practice to me. Yeah, you know (say) tokenizing or regexps backwards and forwards: what better topic to tinker with, to focus on learning how new-language works?

Not to say that exercises emphasizing the intentions or strengths of a language are bad; but precisely those boring repetitive exercises will be the common.. say "conversational mastery" of the language.

Yes, this is what I'm always looking for too, along with examples of idiomatic usage and guidance on commonly-used libraries.