Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I have been programming professionally for 10 years, 5 years more as a hobby. I have been paid 100s of thousands of dollars, my code is used daily by 10s of thousands of people, I have built large, complex systems from scratch, worked in teams and by myself. The things I make do what they're supposed to, they don't break often[1], tend to be fast and usually my client is a happy bunny.

I can fix anyone's code, even when I've never used the language before [2] and it was written by an outsourced programmer who quite obviously only read "how to write SatanScript in 28 days" and then was locked in a room for 2 years until his program kinda worked if you held it upside down while reciting the words to Annie.

I am confident I am a good coder at this point in my career, and much better than many of the programmers I have met. There are a handful I have met that I know are better than me.

I would only have a vague idea of how to do a integer => string conversion with base N without googling it. So am I shit? Am I suddenly a useless programmer because lazyjones only likes people who studied CS? Even though I can understand that code in a glance and rewrite it, often better or clearer than the SO example?

You have picked an arbitrary, and extremely rare in the programming world, standard. No-one needs to write their own string handling routines any more.

Programming is hard and there are many different flavours.

And yours is an old fashioned favour from the early 00s. Stop judging people by it.

[1] Apart from my very bad habit of making a minor last minute tweak or bug fix, not testing it, and introducing an easily fixed bug

[2] They're all pretty much the same after you've used 3 or 4.



> I can fix anyone's code, even when I've never used the language before [..]

You can jump into any codebase and solve core architectural problems like precise garbage collection, eventual consistency, or miscellaneous dead locks? I'm not making up contrived examples, these are some of the problems my friends and I are currently dealing with at work for different companies.

> I would only have a vague idea of how to do a integer => string conversion with base N without googling it. So am I shit? Am I suddenly a useless programmer because lazyjones only likes people who studied CS?

I've never had to do integer => string conversion until asked in an interview either and I still did it. It's not a difficult problem. Anyone with a basic understanding of division and string manipulation should be able to reason out a solution.

> You have picked an arbitrary, and extremely rare in the programming world, standard. No-one needs to write their own string handling routines any more.

I wrote my own C++ string library before std::string was introduced. I contribute to Rust which has its own string, big number, vector libraries and much more. The web site I work on gets >130M monthly uniques and we have extended Python's string, dictionary, iteration, and datetime modules because the standard library isn't enough.

> [Programming languages are] all pretty much the same after you've used 3 or 4.

Then you haven't used enough languages. Try functional programming via Haskell, or dependent typing via Coq, or concurrency via Erlang, or memory safety via Rust.

The world is a really big place. I know people infinitely smarter than me doing incredible things, and there are many more like them. Stop being limited by your own experiences.


Yeah, probably, but that's one of my skills, I have fixed a lot of bugs.

But take a step back. What are you trying to say? You're better than everyone who hasn't done these things? You're somehow a real programmer and everyone else isn't?

And look how big your penis is!

Seriously, what were you trying to achieve with this comment? What have you demonstrated? You're a specialist, you know certain things other people don't. So what? It doesn't make you any more of a programmer than I am.

And seriously, don't puff up the differences between languages, in the end every language is just a different way to take some data, transform that data and emit that new data. What happens in between is nothing particularly complex, it's simply the sheer number of those steps that can happen that make it complex. The whole point of languages is to make it easier to express something. Not harder.

I honestly don't know what perceived slight you were responding to. Carry on believing only the highly specialized 0.1% of programmers are real programmers if you want. Stop being limited by your own snobbish elitism.


Wow, dude, chill out ... in my opinion, wting did not write anything, that gives you reason to accuse him, that he is an elitist. He simply pointed out, that you are limiting yourself with the kind of believe, that there is no need to know how to solve simple problems on your own, and give you examples of things that he was able to do, because he did not limit himself in such a way ...


>>I would only have a vague idea of how to do a integer => string conversion with base N without googling it. So am I shit?

If you receive a programming task like the above (with a relatively clear specification, very little state to manage, defined domain of the desired function, and the input and output of the function are most likely primitives in your language, your standart library probably have lots of utility functions to work with these primitives), I will expect, that you should be able to do it without googling.

Your solution may not be the most effective/short/clean, but it should work. If you can not do it without googling, well ... yes, I do think you are a shitty (or just out of shape for the moment) programmer.

You will need more programming exercise, in order to know more algorithms and aproaches to solving problems, and/or learn better your language and its standart library.


I'd tend to agree with lazyjones. I doubt that his expectation is that you would know all the tricks for making the most efficient integer => string conversion routine ever, but I certainly would expect any competent programmer to be able to write an integer => string conversion routine without really thinking about it, not because anyone needs to write such code much anymore, but simply because a competent programmer should have sufficient mathematical understanding to see the obvious solution to the problem. This isn't about writing string handling code, but about demonstrating understanding of very basic mathematics using a trivial problem that should need a line or two of code in most programming languages to solve.


> would only have a vague idea of how to do a integer => string conversion with base N without googling it. So am I shit?

I would probably not hire you unless you could actually back up your dubious claims ("I can fix anyone's code ..."). The funny thing is, while I am judging people by their ability to solve a particular problem (which admittedly may have an age bias), you are judging people who studied CS based on the fact that you didn't but are still full of yourself.


I'm not judging them. There are great programmers who studied CS. Is a worthwhile thing to add. The best programmer I know studied CS.

It's worthwhile, if you can actually program.

It's unfortunate that a lot of people have to wait till they've gone to Uni, studied CS, gone into the real world, got a job programming, and found they cannot program.


> I would only have a vague idea of how to do a integer => string conversion with base N without googling it. So am I shit?

It sounds very much like it I'm afraid. This is trivial problem solving. Your overconfidence + lack of problem solving ability are big red flags. If you're as good as you claim you are then you should know foundational principles. It gives you a far greater insight into programming than just grinding away with other programmers 'snippets'.


I feel like it's a pretty common phenomenon for people to have their pet somewhat-arcane "gotcha" problem that they feel is the ultimate decider of who's shit and who isn't. And you're on HN, so the responses are going to be way more pedantic than just about anywhere else.

Personally I think this example is way more reasonable than most other technical "gotcha" problems. (I say that because I could solve it despite not having studied CS and being still relatively inexperienced.) But at least they're not asking how many pickles you could eat before exploding if you were shrunk down to the size of a kitten's tongue and placed on a miniature rocking horse that may or may not be alive inside its sad plastic shell.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: