Good tips, thank you. I started in algorithmic trading with Java and Entprise-y stuff. Got bored and moved to front-end. Now looking to move to ML. Like you, no degree, but I apply anyway as long as I feel I have the right signaling.
HN user
votr
What was your strategy for dealing with how most ML positions require advanced degrees?
I want to believe Magic Leap is going to deliver.
With investments from tech companies AND banks AND movie studios, and with half-a-dozen R&D outposts all over the world, it's hard to believe these investors just bought into vaporware.
If Dell releases an XPS 15 in Q1 with Kaby Lake, discrete graphics, and 32GB ram, I'm in.
Become location independent.
Read The Originals; in particular, the chapter on the CIA agent.
Yeah it sucks, but if you insist on the security of a larger company (my assumption), that's how it works.
I have this fantasy of starting a company dedicated to building Linux laptops for developers. Great displays and keyboard, generous ports, beefy specs, with a willingness to trade off size and weight.
I think it hasn't happened yet because it's probably economically not viable.
Is there support for only C/C++ at this time?
I feel like Tim Cook decided to double down on the "Apple as a luxury brand" business model.
If that's the focus, then it makes sense to emphasize thinness, aesthetics, and raise the price at the same time.
Microsoft on the other hand seem to be working hard on winning developer mindshare again, as they know they can't compete with Apple in the branding space.
I hope the surface book 2 will have a 32gb option.
It's rumored that the Surface Book 2 will use Kaby Lake and have a 32GB option. So does this mean the only way MS can support that is by increasing size and weight to 7lbs+?
This is going to keep getting worse until we have some sort of guild or association whereby being a member implies we're already vetted.
I've been using Ubuntu on my desktop for three years now. I love developing on it, but the consumer aspect has minor annoyances.
- If I have a PDF with advanced features, then I need to use Windows.
- Chrome, VS Code, and a few select applications flash repeatedly once up to a certain window size. Found out the problem has something to do with AMD graphics chips.
- I think Libre Office is horrible.
- Linux is still a second-class citizen for certain major apps such as Skype. I wouldn't mind ditching Skype altogether but some clients demand it.
I've never used a Mac, but I can't help but think it's the best of both worlds...but Apple keeps making decisions which I feel sidelines developers.
I approached learning Clojure the way I approach learning everything else. I survey the resources available, then pick the two best books. Ideally, I want them to come at it from different perspectives. e.g. one may place an emphasis on doing stuff with Clojure while another may be more about functional programming.
At the time, they were:
https://www.amazon.com/Clojure-Programming-Chas-Emerick-eboo...
https://www.amazon.com/Joy-Clojure-Michael-Fogus/dp/16172914...
I then wrote a data processing app in Clojure; consuming financial data and finding patterns in it.
My suggestions are: 1) If this is your first time learning a functionally-oriented language, clear your mind from any kind of assumptions picked up from other languages.
2) Get a handle on the core tenets of functional programming: immutability, purity, composition, and functions as objects. If you know Javascript, then a lot of this stuff may already be familiar to you. JS is underrated in that department imo.
3) To me, writing programs with Clojure is akin to playing with Lego. You write your base functions, then higher-level functions which use those base functions, and so on. Functions all the way down.
4) Write something with it; it'll force you to decompose your program and think functionally.
Clojure is a simple, opinionated language. I don't think you'll have a hard time picking it up at all. The hard part will be to think in a manner amenable to it.
These days, I think Clojurescript has overtaken Clojure in terms of traction, so if you're into webdev, then CJS would be a natural next step.
Nope. Still commuting. But becoming remote is my number one goal.
At the moment, I have a client outside of work (ReactJS stuff), and am negotiating a remote gig with a company in California.
I agree that exotic technologies give you a leg up.
My stance is also that, if you're pushing for remote, then by definition you need to justify why you're a better choice than your remote competition who may live in lower COL areas.
If you're remote, then why should someone pay you a high salary vs. paying a lower one to that bright guy in Romania, who can still live like a king?
That's where marketing, differentiation, and service come in. But these are just my guesses.
Everyone has a plan until they get punched in the face.
I'd say non-programming fundamentals took about two months at about 4-6 hours a day, with the majority of that dedicated to algorithms and data structures.
I took these two OCW courses: https://ocw.mit.edu/courses/electrical-engineering-and-compu...
https://ocw.mit.edu/courses/electrical-engineering-and-compu...
And worked my way through these two books: https://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena...
https://www.amazon.com/Algorithms-Robert-Sedgewick-ebook/dp/...
I wrote out my solutions on a whiteboard or pen and paper before typing them into a computer.
Outside of A & DS, I spent some time on operating systems and networking in general. A little bit of probability, but no hardcore discrete math.
There are swaths of areas which I now cover at a slower pace as time allows; compilers, AI, etc.
Clojure. Before learning Clojure, I didn't even have a career. I just wanted to get into software development.
But at the time, all I knew was a bit of Python. And while I could've learned Java, I figured that being yet another Java programmer in the marketplace, but with no experience and a liberal arts degree, was probably going to get me nowhere.
So I decided I had to learn something emerging. Something where there was nascent demand but not much supply. I chose Clojure because it looked weird, and all these bright people were talking about how great it is. I invested a couple of months learning it deeply, open-sourcing my side projects, and blogging about it. I also spent that time learning non-programming fundamentals.
When I felt I was ready, I started reaching out to people in the community and companies on "Who's Hiring" threads mentioning Clojure. Within a couple of months, I landed my first full-time programming gig at an investment bank.
I know that if it wasn't for Clojure, I wouldn't be here today.
Thanks for sharing.
My big question, which I'm still struggling with, is how much to specialize.
I'm one of those guys who wants to do everything. After a few years of Java development in financial companies, I now work on real-time web UIs. I'm now eyeing distributed, soft real-time systems with Elixir, and a bit of applied machine learning.
If you look at my blog, you'll see stuff on Clojure, React, and a few other things. So far, the React stuff has helped me land a client.
My question: Is this counter-productive? Should one specialize? How does one adapt when the specialization wanes and a re-branding is required?
You sound like a character from a Dickens novel.
A chapter from The Originals talks about that. Specifically a junior CIA agent who got sidelined for her suggestions and ideas, only to have them taken seriously once she was senior enough.
And engineers with Libertarian slants happily go along with it while their masters laugh.
My guess, based on nothing, is they've adopted a Japanese-style ethic of putting in long hours for show because of a combination of high living costs and little opportunity.
I've just started dipping my toes into education; sharing stuff through my blog to demonstrate how clearly I can convey things.
I don't know about your personality, but if you're similar to me, then it's about stepping out of our comfort zone and building a network.
In response to you and codegeek, I do think of myself this way. I'm an excellent communicator and actually stand out at work because of this (technology at an investment bank).
Your response made me realize what I'm really asking...
How can I position myself independently as someone with this skillset (programming + wide toolbox) outside of a job?
Thank you, that's what I was really trying to ask.
In a mixed on-site/remote culture, I don't think you do get fair knowledge sharing. In that culture, the on-site workers will always have an edge. And they will be more likely the ones to get promoted.
For anyone looking for remote work, I suggest finding a "remote first" or "100% distributed" company.
How would one actually use this stuff?
There's a section in The Originals (McKay) citing a study where children who were given reasons why something was right or wrong grew up to be more creative and assertive in standing by their principles.
If Waterloo is part of Toronto, you may as well count in Hamilton, Oakville, and Milton as well. Hell, throw in Niagara Falls.
'Chaos and Pain training manual'
What's this?
My anecdata across about a dozen points suggests it's network.
I'm 36 and really want to develop (c). I have decent social skills but I have no idea how to find non-coders to mingle with. Where does one start? Meetup groups? Cycling groups? Creating art and showing it?