5 ms·
Reading the thread so far, I see SQL and bash suggested as being valuable skills. Can you suggest more skills and tools like these that are timeless and valuab
by jsnk 8y ago
Reading the thread so far, I see SQL and bash suggested as being valuable skills.
Can you suggest more skills and tools like these that are timeless and valuable?
- sonabinu 8y agoC
- war1025 8y agoCommunication. Particularly the ability to cross the boundary between technical talk and non-technical talk. People like other people who are easy to talk with. Also you will be more likely to build what is actually needed, rather than what someone thought they needed.
- war1025 8y agoOne of the most useful books I've ever read was "Thanks for the Feedback" [1] I've read a lot of the more standard books like "How to Win Friends and Influence People", etc. I feel like this book is similarly valuable, but a lot less well known. [1] https://www.goodreads.com/book/show/18114120-thanks-for-the-feedback https://www.goodreads.com/book/show/18114120-thanks-for-the-...
- yesenadam 8y agoThanks, will have a look. Crucial Conversations was recommended to me on HN, it's also super-useful - on how to talk about difficult/important things, whether in relationships or organizations or everyday life, where most people would be afraid and say nothing. How to speak difficult truths and ensure everyone feels good about it. Not many people would be advanced enough to not get a lot from that book, I think.
- abraae 8y agoData modelling/design (closely related to SQL of course). i.e. distilling business problems down into tables and columns. Skills acquired decades ago are still extremely useful.
- wvenable 8y agoRegular expressions
- ams6110 8y agoAnd sed, grep, and awk (though awk by itself can often do the job of the first two).
- yesenadam 8y agoYeah, I use AWK constantly, not just for reading files line by line, but whenever I need to e.g. create data in some format, like CSV or XML or for my programs, or to write repetitive code in a program or LaTeX file (e.g. for a lot of images) etc. It's just so quick and easy, such a versatile tool, a pleasure to use. I learnt sed and grep too but rarely use them.
- james_s_tayler 8y agoI only got into AWK much later than grep/sed but I was glad to discover some of awks power. Sed is still and will always my first love, but more and more I reach for awk to learn it as there is still so much I don't know.
- dwd 8y agoInvaluable for cleaning up raw data before it gets into the database.
- sparkie 8y agoI'd add that one should also learn LL and (G(LA))LR grammars. Regex are handy for quick hacks, but anything non-regular becomes hacky and overcomplicated compared with a self-describing grammar. PCREs are over-engineered. There seems to be an equivalent of the "NoSQL" crowd in parsing which appears to be "NoLALR". I can certainly see that other kinds of parsers have their use cases - but LL and LALR parsing have sound theory which is well understood, and they are certainly not obsolete.
- 8y ago
- mongol 8y agoHttp.
- kumarvvr 8y agoWhen beginning a green-field project, a broad, 10,000 ft overview of the data models in your application. Not only in SQL, but also in terms of config files, easy to edit data files for static data, large files, small numerous files, etc etc. Having the right data model can mean a world of difference as to how flexible your application can be. Also, decoupling between data models. For example, decoupling related data through proxies and procedural code.
- chubot 8y agoA few months ago vogre@ suggested SQL, bash, and HTML, and I concurred. https://news.ycombinator.com/item?id=18001267 https://news.ycombinator.com/item?id=18001267 HTML is the quickest way to share something permanently. And its client is the most widely available (the browser). Many people seem to use something like Dropbox or Google Docs now, but my opinion is that HTML still has many benefits, once you know it. I rsync my HTML to a shared hosting account. In addition to bash, I'd suggest learning more about Unix in general. I saw this page a few weeks ago. I haven't gone through this particular course, and I don't necessarily endorse it, but I'll just say that the subject matter could have been largely the same 20 years ago. Unix has proven to be an effective way of working and collaborating for a long time. https://news.ycombinator.com/item?id=19078281 https://news.ycombinator.com/item?id=19078281 EDIT: I also suggest knowing some basic analysis outside of SQL, using data frames: https://news.ycombinator.com/item?id=19150543 https://news.ycombinator.com/item?id=19150543 The need for that skill isn't going away anytime soon. You could argue that a large portion of jobs are munging Excel spreadsheets, and data frames are more of less the programmer's way of accomplishing the same tasks. You could be a snob and "delegate" those tasks to others, but IME if you really want to get something done that other people can't, you have to roll up your sleeves a bit. (Just like this article suggests, e.g. SQL is useful for both programmers and product managers.)
- bas 8y agoTouch typing (I have no idea if this is required in middle/high school these days).