Good resource, "pro" based of just reading? No. But some nice references in a very narrow area.
"Pro" takes experience and time, and in this profession given how things churn, unless you are specifically working with a static environment, sure "pro" versus someone else, but you need to be continually learning.
I created the list for underclassmen in my college to start learning technologies outside of school work, so a title like this will create incentive for them to start learning on their own. Many students here turned out to like the list so I decided to share it here as well.
I've been regularly coding in C for 30+ years. The language has evolved, the behavior on what you can do "to be dangerous" depends on the architecture, as opposed to the things you can do "to be dumb".
Do I consider myself an expert, no. A pro? No.
Libraries, processors, application being built always expose challenges and things to be aware of.
This is why I take exception with the phrasing of "Pro" based off of a reading list.
A language caters to an ecosystem. Most ecosystems change and unless you are continually learning, the definition of "pro" becomes ambiguous.
Despite who my employer is, I know much more about the internals and libraries associated with BSD and Linux related programming in the language of "C" than I do Win. Where do I declare myself an expert? "stdlib"? "stdio"? And so forth.
I'm continually a student in the areas that pop up that interest me (and the ones I wish to maintain).
There's little upside in thinking of yourself as a pro. The upside is in aspiring to be a pro: attention to detail, questioning your choices, actively seeking the edge of your field, putting in the time to practice, and so on. Those who aspire to be a pro are more likely to have these qualities, whereas pros tend to assume they do.
There's not an objection to the list per se, but terms like "pro" and "expert" have real meaning. "All you need is one link to become a pro in some area" is a bit insulting to everyone's intelligence, and isn't true for any widely-recognized meaning of the term "pro". It detracts from what is otherwise a well-intentioned curated list of learning resources.
It might be a good idea to add a meta section with resources on learning to learn. Books would be stuff like "Pragmatic Thinking and Learning", "The first 20 hours", "The Talent Code", "Inner Game of Tennis" etc.
Yes, also it takes a pro to know one I would suggest.
Reminds me of an amusing email I saw recently, where a recent grad, wanna be business analyst, was evaluating a vendor and declared after meeting some of their team that they were 'technically excellent'. Maybe they are, but how on earth that guy thought he was qualified to judge was beyond me.
I'm sure these lists are well meant, but these days I find that quality and especially quality in relation to time that's the problem when learning new things. What I've been doing for years is to look at the course curriculum at schools known to take the subject I want to learn seriously and try and find the few essential books on the subject. Then get the one I feel suits my style of learning and learn (how you do this is also individual) the basics while still not taking everything at face value.
When you have acquired that "common knowledge" the whole field usually opens up and you can quite quickly see what will be relevant for you among pappers, talks, projects etc. A large amount of knowledge, especially in software development, is just rehashing of basics made to sound more interesting than it really is.
I've learnt to ignore "curated awesome list of X" pages because they tend to be dumping grounds for hundreds of links Google returns for a sloppy search about the topic.
By contrast, the resources here are fewer and of extremely high quality. I've found these to be especially useful and interesting:
I was browsing through the list and clicked on exactly those two as they seemed interesting and I tend to brush up n security every now and then. The free PDF from crypto101 looks like an excellent technical complement to "Secrets and Lies" for a good intro if you're looking for a basic security introduction. The hacksplaining website looks pretty cool and I'll probably work through the exercises over the weekend. I've only clicked on the SQL-Injection link but it seems they have set up minilabs where you can try the ideas hands on.
Hey there, nice list!
I see you have nothing on data-mining yet. Here is an awesome well-written open source guide on data mining using Python.
http://guidetodatamining.com/
30 comments
[ 38.5 ms ] story [ 1449 ms ] thread"Pro" takes experience and time, and in this profession given how things churn, unless you are specifically working with a static environment, sure "pro" versus someone else, but you need to be continually learning.
I created the list for underclassmen in my college to start learning technologies outside of school work, so a title like this will create incentive for them to start learning on their own. Many students here turned out to like the list so I decided to share it here as well.
Do I consider myself an expert, no. A pro? No.
Libraries, processors, application being built always expose challenges and things to be aware of.
This is why I take exception with the phrasing of "Pro" based off of a reading list.
Despite who my employer is, I know much more about the internals and libraries associated with BSD and Linux related programming in the language of "C" than I do Win. Where do I declare myself an expert? "stdlib"? "stdio"? And so forth.
I'm continually a student in the areas that pop up that interest me (and the ones I wish to maintain).
A good professional takes pride in his work, and aspires to improve his craft.
False modesty gets you nowhere.
That said, are you sure it's a good idea to remove modesty from your mind? It seems like more have fallen to pride than were lost to modesty.
Link to a cool TED-talk (20 hours): https://www.youtube.com/watch?v=5MgBikgcWnY
:)
Reminds me of an amusing email I saw recently, where a recent grad, wanna be business analyst, was evaluating a vendor and declared after meeting some of their team that they were 'technically excellent'. Maybe they are, but how on earth that guy thought he was qualified to judge was beyond me.
;)
When you have acquired that "common knowledge" the whole field usually opens up and you can quite quickly see what will be relevant for you among pappers, talks, projects etc. A large amount of knowledge, especially in software development, is just rehashing of basics made to sound more interesting than it really is.
However this is never clarified to the reader.
If you want to be pro at Scala, I would recommend reading this: http://www.scala-lang.org/old/node/8610
David, if you see this, I'd like to thank you for these talks as they have reshaped the way I think about software development.
I've got more from these then my classes at college have given me do far.
I've learnt to ignore "curated awesome list of X" pages because they tend to be dumping grounds for hundreds of links Google returns for a sloppy search about the topic.
By contrast, the resources here are fewer and of extremely high quality. I've found these to be especially useful and interesting:
- https://www.hacksplaining.com/
- https://www.crypto101.io/
An updated (iOS 9) version of the course is already out:
https://itunes.apple.com/us/course/developing-ios-9-apps-swi...
http://blog.rplasil.name/2016/06/my-list-of-high-quality-onl...
Welcome any other (high-quality) additions!