For 1. specifically, I like this quote from Jeff Bezos:
> I very frequently get the question: "What's going to change in the next 10 years?" And that is a very interesting question; it's a very common one. I almost never get the question: "What's not going to change in the next 10 years?" And I submit to you that that second question is actually the more important of the two -- because you can build a business strategy around the things that are stable in time. ... [I]n our retail business, we know that customers want low prices, and I know that's going to be true 10 years from now. They want fast delivery; they want vast selection.
> It's impossible to imagine a future 10 years from now where a customer comes up and says, "Jeff, I love Amazon; I just wish the prices were a little higher." "I love Amazon; I just wish you'd deliver a little more slowly." Impossible.
What's the best way to learn machine learning without a real GPU or a budget for cloud time? There's lots of demos and stuff that can run on low end CPUs, but is that close enough in terms of skill to what you'd actually be doing on the job to be worth it?
I think systems thinking is needed more than ever. There are way too many myopic decisions being made all across the board.
For specific programming languages, I think Elixir is a great investment.
Edit: Some systems reading if anyone is curious:
* Thinking in Systems by Donella H. Meadows
* Designing Freedom by Stafford Beer. I also recommend anything by Stafford Beer.
* Anything by Christopher Alexander
* Systems Thinking For Social Change: A Practical Guide to Solving Complex Problems, Avoiding Unintended Consequences, and Achieving Lasting Results: A new to me book that I haven't read but looks promising.
Formalised thinking strategies never clicked for me. It’s either completely obvious stuff (almost like trying to teach someone common sense), or very vague generic statements without practical applications.
+1. I always recommend starting with the foundational document, Cybernetics by Norbert Wiener (and the companion title, The Human Use of Human Beings).
After 2022, it's both hilarious and sad to see how blockchain type recommendations have fallen off so hard.
What a gigantic waste of time and effort that field has been. I still have yet to see anything useful come out of it. NFTs always are pointed to as the "useful" thing, but tbh, if I'm buying art, I'd much rather have some well regarded painters work hung in my living room.
I never really bought into the crypto hype... I did setup some bitcoin miners at home to run when idle when it was really early on... I think it was like $0.15-0.25 for a coin in terms of trade value. I had a handful of coins that cost way more in terms of electricity at the time, and couldn't really do anything with them... I deleted all of it off all the machines. Sometimes wish I'd kept the wallets (not sure if Dropbox was around yet) when it hit like $20k or so.
It just feels kind of scammy... but I largely feel that way about the stock market as well.
There are really good applications of blockchain, unfortunately most effort was focused on the dumbest ones.
Take for instance identity management - hospital ticketing system, where the patient's records are linked directly and inextricably to the tickets, etc. You can request an appointment using a smart contract, and everything else will happen magically.
Maybe someone worked on such systems, but they didn't get any airtime.
I think eventually it will happen.
My goal: build an outdoor robot to keep the deer away from my plants. Learning goals:
- Brushless motor control: has now reached cheap commodity status and would be good to learn more about. In the past I was always stuck between DC toy motors and full 6 wire AC motor control.
- Vision system on a small micro with edge-AI model for deer detection. After decades of classic machine vision I think it's time to overcome my neural net reservations and plunge in with one of those microcontrollers that can run pre-trained models efficiently
- Battery charging dock that robot drives to autonomously: learning goal is Oregon weather capable contacts or even wireless charging
My instinct would be to do all this in C++ with some Python as high-level glue but maybe time to learn some Rust? Not sure yet.
This sounds like an amazing project and learning opportunity! Reminds me of a halfbaked hardware+software project idea of my own:
- Goal: increase the amount of natural light in my apartment during the day
- Mount a flat mirror on a motorized sun-tracking attachment on south-facing balcony railing
- Set up geometry, software, and motor to rotate the mirror so that it always reflects a beam of sunlight into the apartment, trained on a target area between the wall and ceiling, above eye level of occupants
I love this goal, best of luck with it. I would like to build (or buy) a robot to protect my chickens from air and ground predators during the day so they can happily free range all day.
Pertinent for 2023, learn about costs. If you're an engineer, understand how much the services you're responsible for are costing. How can you reduce that cost? Can you optimize costs enough to save your monthly salary?
+this ... I think learning to deal with people, actually listening and assuming you are wrong first have been some of the most difficult things to come to terms with. I'm decades in and just the past few years have started to get much better with people skills. Working with someone that has every personality quirk you have dialed to 11 was eye opening.
Not so much a skill but I'm curious to see where the low-code scene goes and will be following it closely.
I feel like a low-code platform that can be stood up on infrastructure (cloud or otherwise) owned by a company could provide a lot of value. Many companies and especially local governments have unique infrastructure requirements that make using a random website for a business function a non-starter. If they could bring a properly supported low-code platform to their infrastructure i could see that being super productive for a lot of the simple use cases they encounter.
AI: and not just deep learning, ml, etc. I mean just using AI tools in a responsible way - I don't mean bypassing safeguards, I mean recognizing when you should fact check it. In a way, reliance on AI that is imperfect might actually increase people's 'fact checking' abilities because these are severely lacking in society right now.
E.g. Be able to use chatGPT to help you code, but not if you're maybe a junior and can't discern good code from crap. It should be basically a subordinate who you do code reviews with, not the other way around, though when it's on it's game if you don't understand a concept it can explain it pretty damn good. Again that's assuming it isn't making things up.
It would be nice if there were a toggle, or slider for: truthfulness, and reliability. Where basically it has little creativity to 'create' things that don't exist, unless reliability is set to 'creative' or 'low'. If I'm writing a fiction novel, that's what I want. If I'm coding it isn't.
I think AI consulting and workflow management will be big in the coming years. It's obvious so many things that we can do with this tech to us, but to many people they just don't 'get' it, and there's money in showing them.
* GPU programming (GPUs have consistently kept up with Moore-like laws)
* FPGA/ASIC design (hard but price for all of these is dropping rapidly, so becoming more accessible)
* Bitcoin/cryptocurrency related tech, including standing up your own miner, full node, or understanding how to build applications on top of it (web3/etc.) (despite the hate, cryptocurrencies are still around and thriving)
* Solar and battery related tech (solar prices continue to drop, as does battery technology. Consumers ROI on solar installations are approaching 2-5 years instead of 10+).
Understanding "fundamentals", either in terms of computer science education or mathematics, I think is also critical but I don't really know what fundamental math should be focused on, in the short term. It's easy to say "neural networks" but proficiency in that area is mostly about learning frameworks (as a snapshot of right now) and little to do with some underlying theoretical understanding.
In terms of specific languages or frameworks, just a word of warning. What language/frameworks that were popular 10 years ago are still relevant today? Many people gain utility both from using and from being paid to manage frameworks (and to a certain extent languages) but they tend to be ephemeral.
One piece of advice that I think was pretty good was to avoid the "stampeding hoards". One can "win" at the game of being the best at what's fashionable now but the greater utility is in understanding more fundamental skills with the added benefit of, should a skill become fashionable later, being well versed in it when it does.
Writing, one of the most versatile and compounding skills you can learn.
When used for yourself, it's a tool for thinking, organizing information, and understand your inner workings.
When interacting with others, it can be persuasive but kind, eye opening but focused, or walk on any fine line you can imagine. You can teach, educate, warn, debate,... with the tone you like. It's a skill that enables both strategy and empathy.
Cloud agnostic? Not really. All the resources are cloud specific. You can't configure anything of any complexity without knowing details about your specific provider.
Low level? It's about as far from "low level" as you can get. I would barely call it a programming language.
That being said, I do think it is a worthwhile skill to learn.
[+] [-] bckr|3 years ago|reply
There are 3 things to learn at any given time:
1. That which never changes i.e. humans, yourself and others
2. What you need to know to succeed right now i.e. deeper in your current tools and systems, or those you'll need to use next month
3. Whatever intrigues you. Maybe this is what you're asking: what's new to be intrigued by?
To the latter, I would say to start learning machine learning if you haven't already.
[+] [-] brad0|3 years ago|reply
> I very frequently get the question: "What's going to change in the next 10 years?" And that is a very interesting question; it's a very common one. I almost never get the question: "What's not going to change in the next 10 years?" And I submit to you that that second question is actually the more important of the two -- because you can build a business strategy around the things that are stable in time. ... [I]n our retail business, we know that customers want low prices, and I know that's going to be true 10 years from now. They want fast delivery; they want vast selection.
> It's impossible to imagine a future 10 years from now where a customer comes up and says, "Jeff, I love Amazon; I just wish the prices were a little higher." "I love Amazon; I just wish you'd deliver a little more slowly." Impossible.
https://www.inc.com/jeff-haden/20-years-ago-jeff-bezos-said-...
[+] [-] eternityforest|3 years ago|reply
[+] [-] bmitc|3 years ago|reply
For specific programming languages, I think Elixir is a great investment.
Edit: Some systems reading if anyone is curious:
* Thinking in Systems by Donella H. Meadows
* Designing Freedom by Stafford Beer. I also recommend anything by Stafford Beer.
* Anything by Christopher Alexander
* Systems Thinking For Social Change: A Practical Guide to Solving Complex Problems, Avoiding Unintended Consequences, and Achieving Lasting Results: A new to me book that I haven't read but looks promising.
[+] [-] jstx1|3 years ago|reply
[+] [-] rileyphone|3 years ago|reply
[+] [-] humanizersequel|3 years ago|reply
[+] [-] yamrzou|3 years ago|reply
[+] [-] eitland|3 years ago|reply
[+] [-] patchorang|3 years ago|reply
[+] [-] ushercakes|3 years ago|reply
What a gigantic waste of time and effort that field has been. I still have yet to see anything useful come out of it. NFTs always are pointed to as the "useful" thing, but tbh, if I'm buying art, I'd much rather have some well regarded painters work hung in my living room.
Not some monkey as my twitter avatar. Shrug.
[+] [-] tracker1|3 years ago|reply
It just feels kind of scammy... but I largely feel that way about the stock market as well.
[+] [-] monomon|3 years ago|reply
Take for instance identity management - hospital ticketing system, where the patient's records are linked directly and inextricably to the tickets, etc. You can request an appointment using a smart contract, and everything else will happen magically.
Maybe someone worked on such systems, but they didn't get any airtime. I think eventually it will happen.
[+] [-] zwieback|3 years ago|reply
- Brushless motor control: has now reached cheap commodity status and would be good to learn more about. In the past I was always stuck between DC toy motors and full 6 wire AC motor control.
- Vision system on a small micro with edge-AI model for deer detection. After decades of classic machine vision I think it's time to overcome my neural net reservations and plunge in with one of those microcontrollers that can run pre-trained models efficiently
- Battery charging dock that robot drives to autonomously: learning goal is Oregon weather capable contacts or even wireless charging
My instinct would be to do all this in C++ with some Python as high-level glue but maybe time to learn some Rust? Not sure yet.
[+] [-] trevorhlynn|3 years ago|reply
[+] [-] EForEndeavour|3 years ago|reply
- Goal: increase the amount of natural light in my apartment during the day
- Mount a flat mirror on a motorized sun-tracking attachment on south-facing balcony railing
- Set up geometry, software, and motor to rotate the mirror so that it always reflects a beam of sunlight into the apartment, trained on a target area between the wall and ceiling, above eye level of occupants
[+] [-] larubbio|3 years ago|reply
[+] [-] dredmorbius|3 years ago|reply
1. What (recently or distantly) acquired skill(s) have proven most useful to you?
2. What skills don't you have but you regret or year for most?
I like @bckr's guidance (<https://news.ycombinator.com/item?id=34055079>), and suggest that there are abilities with greater persistence which are often underappreciated.
[+] [-] brad0|3 years ago|reply
Systems Thinking. It helps you understand how components interact to form a system, and how to change it. Books:
- The Goal: https://www.amazon.com/Goal-Process-Ongoing-Improvement/dp/0...
- Thinking in Systems: https://www.amazon.com/Thinking-Systems-Donella-H-Meadows/dp...
Pertinent for 2023, learn about costs. If you're an engineer, understand how much the services you're responsible for are costing. How can you reduce that cost? Can you optimize costs enough to save your monthly salary?
[+] [-] diegoop|3 years ago|reply
[+] [-] rcarr|3 years ago|reply
[+] [-] yupis|3 years ago|reply
Learning how to learn new stuff
[+] [-] tracker1|3 years ago|reply
[+] [-] AnimalMuppet|3 years ago|reply
[+] [-] chasd00|3 years ago|reply
I feel like a low-code platform that can be stood up on infrastructure (cloud or otherwise) owned by a company could provide a lot of value. Many companies and especially local governments have unique infrastructure requirements that make using a random website for a business function a non-starter. If they could bring a properly supported low-code platform to their infrastructure i could see that being super productive for a lot of the simple use cases they encounter.
[+] [-] pipeline_peak|3 years ago|reply
Stand out to your employers, acquire knowledge and skills that makes you truly special. Not the fastest programmer in the hottest language.
[+] [-] gremlinsinc|3 years ago|reply
E.g. Be able to use chatGPT to help you code, but not if you're maybe a junior and can't discern good code from crap. It should be basically a subordinate who you do code reviews with, not the other way around, though when it's on it's game if you don't understand a concept it can explain it pretty damn good. Again that's assuming it isn't making things up.
It would be nice if there were a toggle, or slider for: truthfulness, and reliability. Where basically it has little creativity to 'create' things that don't exist, unless reliability is set to 'creative' or 'low'. If I'm writing a fiction novel, that's what I want. If I'm coding it isn't.
I think AI consulting and workflow management will be big in the coming years. It's obvious so many things that we can do with this tech to us, but to many people they just don't 'get' it, and there's money in showing them.
[+] [-] abetusk|3 years ago|reply
* GPU programming (GPUs have consistently kept up with Moore-like laws)
* FPGA/ASIC design (hard but price for all of these is dropping rapidly, so becoming more accessible)
* Bitcoin/cryptocurrency related tech, including standing up your own miner, full node, or understanding how to build applications on top of it (web3/etc.) (despite the hate, cryptocurrencies are still around and thriving)
* Solar and battery related tech (solar prices continue to drop, as does battery technology. Consumers ROI on solar installations are approaching 2-5 years instead of 10+).
Understanding "fundamentals", either in terms of computer science education or mathematics, I think is also critical but I don't really know what fundamental math should be focused on, in the short term. It's easy to say "neural networks" but proficiency in that area is mostly about learning frameworks (as a snapshot of right now) and little to do with some underlying theoretical understanding.
In terms of specific languages or frameworks, just a word of warning. What language/frameworks that were popular 10 years ago are still relevant today? Many people gain utility both from using and from being paid to manage frameworks (and to a certain extent languages) but they tend to be ephemeral.
One piece of advice that I think was pretty good was to avoid the "stampeding hoards". One can "win" at the game of being the best at what's fashionable now but the greater utility is in understanding more fundamental skills with the added benefit of, should a skill become fashionable later, being well versed in it when it does.
[+] [-] silksowed|3 years ago|reply
[+] [-] seneca|3 years ago|reply
Kubernetes is still incredibly relevant but growth is slowing down (mostly because it ate the world already).
WASM and eBPF are hot new technologies but still niche.
CDK landed last year and will probably become more and more relevant for new projects vs vanilla Terraform.
[+] [-] tester457|3 years ago|reply
[+] [-] cranium|3 years ago|reply
When used for yourself, it's a tool for thinking, organizing information, and understand your inner workings.
When interacting with others, it can be persuasive but kind, eye opening but focused, or walk on any fine line you can imagine. You can teach, educate, warn, debate,... with the tone you like. It's a skill that enables both strategy and empathy.
[+] [-] Bhaskar13|3 years ago|reply
Cloud technologies: AWS/kubernetes/docker
Languages: English/any other native lang of country that you are trying to settle in
[+] [-] madduci|3 years ago|reply
[+] [-] icedchai|3 years ago|reply
Low level? It's about as far from "low level" as you can get. I would barely call it a programming language.
That being said, I do think it is a worthwhile skill to learn.
[+] [-] struct|3 years ago|reply
[+] [-] steveklabnik|3 years ago|reply
[+] [-] Bilal_io|3 years ago|reply
[+] [-] whateveracct|3 years ago|reply
[+] [-] jgilias|3 years ago|reply