Live data from Hacker News

No CS Degree – Interviews with self-taught developers

nocsdegree.com

301–310 of 480 posts

Re: No CS Degree – Interviews with self-taught developers

#301

Since these articles seem to be putting a cash value on the word "success" (or at the very least an instagram buzz value), I would point that IMHO, most of this success comes from people skill. You can have a degree or not, even bad developpers can hop from one job to another, making more and more money in the process, given they're good enough to manipulate the recruiters/clients into hiring them. Making money does…

>Congratulations, you're making money by manipulating someone into giving you their money. Awesome ! Thanks for playing, please leave.

It's not manipulation. It's always a sales proposition, but you're either doing it well or you're doing it poorly.

Obviously, there is no external, impartial arbiter of what makes a "good" programmer (or products, or services). There is only perception.

I used to drift around but I've learned the importance of selling myself so I can be sure I get the value I deserve.

Re: No CS Degree – Interviews with self-taught developers

#302

I have a religious studies degree. I wonder if it’s prepared me better than a CS degree for the actual work I do. What did I learn with my RELS degree? Hermeneutics— understanding ancient texts written by lots of different authors in their original historical contexts, often which has been deeply redacted over time. Anyone who’s worked on any production code can see the benefit of being trained in that kind of thinki…

> Oh and just, we did a TON of writing in college. Lots and lots of writing, lots of research papers. I had to learn something new, read all about it, and put together a document carefully explaining the idea, with lots of evidence and citations. That skill has come in SUPER handy for everything from bug reports to API clients, to customer-facing documentation, to internal memorandums.

IMHO the worst bottleneck in both practical computing and even much of computer science is the struggle to explain/document the work in, say, English.

Re: No CS Degree – Interviews with self-taught developers

#303

Earlier quoted context omitted.

recursion overrated imo.

I disagree. To consider something overrated, its value has to be little in comparison to the effort to learn it. For some problems, recursion is vastly superior e.g. for recursive data structure like trees. And coincidentally, often those structures are much better at delivering high-performance solutions than their naive loop-based counterparts. Granted, it isn't easy to learn, but also not that hard. Overall, I thi…

Note that using function-call based recursion is a programming mistake in most common programming languages, as they have a fixed sized stack.

This includes many "functional" languages like Scala. Even Haskell had a default stack size limit until some years ago, and many Haskell based parsers crashed on large inputs due to that.

If you write programs that are supposed to process arbitrarily large inputs, you cannot use function call recursion in most cases.

(Of course this says nothing about recursion as a concept, which is fundamental and unavoidable unless you're programming, say, a traffic light.)

Re: No CS Degree – Interviews with self-taught developers

#304
I'm a mostly self-taught CSE with no CS degree, with well over 25 years of professional experience. I feel that not having the degree has stunted me in some ways, but has also gave me a bit more freedom in others, because I could explore areas for solutions without realizing "how things are done".

That can be both a good and a bad thing.

Lately, I've been exploring other areas of CS which have always interested me, even as a child with my first computer, namely that of "machine learning". Where I have found I fall down in that area is in understanding the deeper level math concepts. I know these aren't really required to come up with solutions to problems using the existing toolsets for machine learning (as long as one can understand the math and concepts at those levels, which is arguably simpler) - but not having that understanding (or only a partial understanding) makes me frustrated that I can't understand exactly what is going on inside "the black boxes".

For instance, I (mostly) understand how MSE and backprop works in a neural network. I also understand why and when to use RELU vs sigmoid (or some other activation function). But could I derive any of that from first principles? Not at my current level of understanding (all those damn rules of calculus - which I don't understand). In many cases, though, I don't need to - I can treat them as a black box. But I don't like it. I do intend to fix this someday.

Of course - this subject - machine learning - has over the years led me down interesting and surprising paths (long before I started really studying it as a subject, in 2011, when I took the "ML Class" and "AI Class" MOOCs). Things more philosophical in nature, but all seemingly related in some manner, at least to my mind:

* Chaos theory

* Network theory

* Emergence and Complexity

* Theory of Mind

* Various topics in neuroscience

* Various topics and ideas in psychology

* Etc

...with "Etc" encompassing robotics, engineering, electronics, ethics, history, religion - and all the interactions and branches and spaghetti in between.

So much of that I wish I could have a more formal grounding in; I also wish I could speak with (and have the language to speak with) those who have this knowledge and grounding. I know that to be an impossibility, even if I were 20-30 years younger.

It astonishes me that many don't see how much CS in general touches and interacts (and both informs and is informed by) with all those topics and more. I see this, even if I don't understand it completely, and sometimes wonder or suspect that maybe I am wrong at some level? Maybe the lack of a formal education in all of those subjects has caused me to see things which aren't there...?

Alternatively, it could be that by not having such an education, I am - like before - not "constrained in a bubble" so that I don't see those things?

I am not saying I am special in this regard - I have read and spoke with others who have similar ideas to one extent or another, and in many cases their understandings have informed mine.

I'm just not sure if I should focus narrowly at this point in my life at 46 years of age, or go more broadly; both are fascinating paths for me. From what I have seen and read, it seems like the "broad path" would be more immersion in studying philosophy, perhaps with a greater focus on the philosophy of mind and/or consciousness.

At the same time, I like to think about and focus on the idea (and fantasize of solving it - fat chance) of the "wrongness" of backprop - and whether another solution exists for neural network learning that is more biomemetic?

...and at this point, I'm rambling - so I'll shut up.

Re: No CS Degree – Interviews with self-taught developers

#305
post #274

Earlier quoted context omitted.

You are sure he was never at a university? And why are you drawn to Haskell? For me I only had to deal with it a bit at university and I found the concept interesting, but could not imagine non math people to use it for anything as a language of choice

I'm not sure he never was at university, I just assume not [1]. > why are you drawn to Haskell? I just want my programs to work. I've seen too many null pointer exceptions and other runtime errors. Runtime errors = bad. Compile errors = good. [1]: https://news.ycombinator.com/item?id=20112065

"I just want my programs to work"

Me too ...

And I think imperative languages are way more easy and clear to read and write.

I allways imagined that you have to be a math nerd to prefer Haskell, but apparently this guy is not a math guy, but loves Haskell .. so ok, good counterpoint.

Re: No CS Degree – Interviews with self-taught developers

#306

I had been a graphic:web designer since I was 14 years old. I taught myself Photoshop and Dreamweaver and became proficient with creating layouts with frames, tables, and of course eventually css. I graduated from college with a degree in Philosophy where I was focused on logical systems. I recall one of my favorite professors being intrigued to know whether I could program and disappointed when I confessed that I on…

With your background picking up algorithms and data structures shouldn't be hard. It's just a matter of studying them like anything else. (I program and my degree is in science.)

Re: No CS Degree – Interviews with self-taught developers

#307
post #104

I am trying to transition from C programming on Tandem(also called HP/Nonstop) to Java and web technologies. The main reason I want to move out of Tandem is that there are only few companies having that system and jobs are few. I have basic Java knowledge but don't have any experience developing for web. The new jobs posting all talk about lot of skill set - Struts, Spring. When I got a job interview I got unrelated…

Switching from C to Java with Spring/Struts shouldn't be that hard, because you are still on the safe side (the server). The real fun with web technologies starts when you are in the browser.

So if you have no prior experience with the web-technologies, I would recommend you to learn a bit of HTML/CSS/JS until you are familiar with them (build a simple, plain HTML page, add some CSS to change the layout, throw in some JS to load some content asynchronously and maybe add some JS buttons to make the page interactive via JS (e.g. change the content when pressing a button)). Nothing too fancy, just make should you know what every language looks like and which language to use for what use-case.

Next, you should find out which Java Framework you really need to learn. When I learned Struts 2 a couple of years ago, I remember that it was considered outdated already.

And then start doing the tutorials of the frameworks, followed by building something you want to build with those technologies (start small and keep adding stuff). At least that is the path of the self-taught developer.

Re: No CS Degree – Interviews with self-taught developers

#308

I'm turning 30 this year, a professional accountant and started out as a hobbyist, but work in data engineering consultancy as middle management, leading efforts into getting our team to adopt Rust of all languages. I've found being willing to learn more to help me out, my breadth of knowledge is good enough that in many languages and concepts, I can hold my own against CS graduates. I think knowing what you don't kn…

In the very early days (60's-80's) when the needs for programming outweighed the supply... Most programmers were being cross trained from other professional disciplines, such as accounting.

Re: No CS Degree – Interviews with self-taught developers

#309
post #199

Earlier quoted context omitted.

> some of the data structures I created perform better than anything in the published literature - but I couldn't be bothered to write papers. You can probably imagine why many people wouldn't believe you. "My work is amazing but I am too lazy to publish it" is a peak stereotype for self-educated people. My prior on this being ignorance rather than genius is super high. And if it is true that you are a once in a gene…

It's not really that hard. For example I made a queue that outperforms the lynx queue. My fundamental instinct after reading that paper was that there's no way faults out perform bounds checks in a modern, speculating out of order CPU. I ran some tests and yes my instinct is correct. Maybe the result wouldn't hold under peer review for some reason, I just tested a few more ideas / criticisms with a colleague and move…

The person you replied to is wrong. This is peak stereotype:

> I'm not a genius, unless you count an online IQ test I took in my early twenties, but I'm deeply skeptical of those

You do sound smart though. Just... one of the benefits of a challenging formal education is a large dose of humility.

Re: No CS Degree – Interviews with self-taught developers

#310
post #11

Recursion and Abstraction, like love and herpes, are a form of disease which once caught cannot be lost, but can be shed, and so spread. Your brain is wired to look for both opportunistically, in any problem. What a CS degree does, is teach you how to apply the infection. Some CS degrees are like innoculation against them and you come out with a degree, but no grasp of the fundamentals. Others, you learn so much you…

Of course, it's also possible to over-apply, which I see every bit as often as copy-pasta.
Post reply on HN