Open Side Menu Go to the Top
Register
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** ** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **

04-22-2014 , 09:28 AM
Quote:
Originally Posted by Nchabazam
I started with C++ which is just way harder to do simple stuff than ruby. Part of the important part of learning to do anything is to not get discouraged.

Learn good fundamentals with a language that won't make you quit in the process, and learn stuff that's closer to the metal when it actually matters (still hasn't to me).
I tried to teach myself BASIC when I was 14, and got so discouraged I didn't pick up computer programming again until I was 29. True story.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-22-2014 , 09:42 AM
Quote:
Originally Posted by suzzer99
I tried to teach myself BASIC when I was 14, and got so discouraged I didn't pick up computer programming again until I was 29. True story.
I mean I did C++ in AP comp sci in HS, then did a second level C++ course first semester freshman year. Had a crappy machine level coding class (or something like that, barely remember) with a terrible teacher, dropped it, and didn't write a line of code for 9.5 years.

Part of what's interesting is what you can do with a language... so the coolest thing I did was build a command line crazy 8s card game. It was neat, but didn't get me interested in going further. Web stuff really spoke to me, and not dealing with crappy compiler errors (so esoteric in 2002) and other annoyances.

The only thing I took out of those years was 1) basic programming constructs (i.e. what tools are available to solve a problem) and 2) basic algorithmic stuff to be aware of (order log n, n, n^2, etc).

What's the point of learning memory allocation when you functionally can't mess that up in ruby/python? What are you going to be doing with programming?

Even if there's some awesome teacher teaching C, I just don't see the value unless you want to go build graphics engines or something similar. I feel like even being aware of little crap like that is going slow you down (like overengineering a simple problem).

Disclaimer: I have no interest in ever working for a huge company where little performance tweaks may actually be important unless it's my own.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-22-2014 , 09:56 AM
Thinking about it a little more, it also depends on what you prefer doing. I enjoy taking frameworks that other smart people have constructed, and using them to build really cool stuff. What I think makes me a good developer is my ability to quickly piece together existing tools/solutions into an awesome final package. This means that most of the low level implementations are taken care of for me.

If you're interested in building plugins/frameworks that are used by thousands of developers like me, then I'd guess that something like C has more value (but as pointed out by a few people and myself, I think ruby/python are much better languages to start with). If you like using those plugins to build cool end products that are used by non technical people, then it matters less.

Still, you can make 6 figures in less than two years just googling/assembling other people's solutions.

Out of curiosity, what would some strong C/C++ developer make compared to some glorified lego builder web developer like me?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-22-2014 , 10:42 AM
I started with C, and coincidentally I am quite fond of pointing out that I can write C in every language
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-22-2014 , 12:53 PM
Since we are on the topic of C. For a CS student who has taken the standard two entry level programming courses (up to data structures) in Java and is going to start a course on architecture next year which will require programming in C, what is a good way to get a jump start on that?

CS50x might not be a bad idea even if it will be conceptually really easy. Any other suggestions? Maybe even an online equivalent of an architecture course would be good to look over.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-22-2014 , 01:16 PM
I went from logo to apple] [ basic to TI85 language and then javascript 15 years later...
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-22-2014 , 04:55 PM
DHH's railsconf key note is really good. I can't agree with him more.

http://www.justin.tv/confreaks/b/522089408
[DHH comes in after a few minutes]

Edit:

The gist of it is you should think of yourself as a writer more so than a scientist if you're creating information oriented software and that you should just write more code instead of reading about fancy patterns.

He spent a lot of time just talking about how testing first doesn't really help make your code base better.

Last edited by Shoe Lace; 04-22-2014 at 05:09 PM.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-22-2014 , 05:45 PM
ugh, i find him so frustrating. he's so right about some things, and so wrong about others.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-22-2014 , 06:09 PM
What parts did you agree/disagree with?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-22-2014 , 06:56 PM
Quote:
Originally Posted by TheMetetrown
Since we are on the topic of C. For a CS student who has taken the standard two entry level programming courses (up to data structures) in Java and is going to start a course on architecture next year which will require programming in C, what is a good way to get a jump start on that?

CS50x might not be a bad idea even if it will be conceptually really easy. Any other suggestions? Maybe even an online equivalent of an architecture course would be good to look over.
I've been watching these lectures: http://www.youtube.com/watch?v=Ps8jOj7diA0

The teacher is really good at conveying the subject, and it breaks you in to learning about what is happening at the memory level when you deal with pointers, references, and casts.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-22-2014 , 07:27 PM
Quote:
Originally Posted by Shoe Lace
What parts did you agree/disagree with?
it would take too long to do it justice, there's so many things on both sides. the big thing i agree with is that writing is a better metaphor for programming in most cases than engineering is, and that clarity should trump most other values.

the big thing i disagree with is that testable systems lead to bad designs. if that's happening then it means you don't know how to design systems. and the huge danger here is now his thousands of acolytes just had their ****ty, coupled, untestable code bases blessed by his hand wavy polemics.

also, my read (both from this talk and from his posts in a few HN threads) is that he's a super sensitive guy and is incapable of objectively processing any criticism of rails or his own code, but is such a good, charismatic speaker that the petty defensiveness underlying some of his positions is completely masked.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-22-2014 , 09:42 PM
Quote:
Originally Posted by well named
I started with C, and coincidentally I am quite fond of pointing out that I can write C in every language
I think a better talent would be

Quote:
Originally Posted by Grue
I went from logo to apple] [ basic to TI85 language and then javascript 15 years later...
writing every language in Logo, like Grue. I know I'm envious.



FWIW, C is an incredible antidote to Lisp. Some languages just don't bend like that, but then again, C is so different that I'd feel like I was offending the computer gods for trying, unless I built a compiler first.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 09:02 AM
What do you guys think is a reasonable salary to try to negotiate for a junior python/django developer in NYC? I'm going to what will be my 4th interview with this company (2 phone, this is the 2nd in-person). I was expecting something like 68k-72k, however the recruiter told me that their offers are usually around 60k for a position like this.

My experience: Recent CS grad, 6 months professional experience in C#, I did a 4 month PHP internship last summer, and have built two websites for personal projects in python/django.

I'm currently making 58k in NJ, so anything <65k is really a pay decrease considering relative living expenses. I really like the position though and if 60k is all I can get, I will take it, but of course I want to get as much as I can without risking losing the offer, and feel like the high 60's isn't unreasonable?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 09:11 AM
My starting salary in NYC right out of school at a small-ish company was $65K. And that was almost 10 years ago.

Lots of factors to consider (what school, specific experience, how well you interview, etc.) but 60K seems very low.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 09:15 AM
I went to Rutgers, which is a state school. Pretty well known but CS department isn't anything noteworthy. Experience wise in Python, I'll admit I definitely have a lot to learn, although am totally capable of picking up on things quickly. And not to toot my own horn, but I know I interview pretty damn well; I'm a really good extemporaneous speaker, enthusiastic, etc.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 10:45 AM
I'm going to guess that is too low; I'd definitely push for way more. Also, don't underestimate the adding cost of living (NYC income tax, added rent if you are moving). I imagine it is probably greater than the $7k you mentioned assuming you are moving to NC.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 10:48 AM
I am supposed to graduate in the fall. Non traditional student (28 years old). I have excellent work references but none CS related. I have an interview Friday with a major hard drive manufacturer for an internship that pays really well ($25/hr). Only problem is it goes May-December, they want me to take a semester off, and the classes I need to graduate are only offered in the fall.

Should I take it to get the experience (not to mention the money is great for an internship) and just figure something out for next spring and summer, or is it probably not worth delaying graduation for a year?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 10:55 AM
I'd vote not worth it unless it's an amazing opportunity in the field you want to work in.

If you could get them to hire you for the full year, than I think its worth it (assuming you really want the job).
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 02:25 PM
all,

any recommendations on good code problems for technical interviews? i have a couple that i like but want to try a new one. my criteria:

1. it should be solvable by someone who is *very* good in under an hour, and in 2-3 hours by good developers.
2. it should not require even a remotely obscure algorithm to solve. the exercise is about modelling and solving a simple problem, and about showing off your best code, not about your memory of a CS class.
3. it should be a mini information systems problem -- the process of taking simple requirements for a real world problem and translating that into code is key.

so, eg, having them write a simple todo application might fit the bill, but i don't use that because it's so common and likely something many candidates would have already thought about and modeled.

any ideas?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 02:32 PM
Quote:
Originally Posted by daveT
FWIW, C is an incredible antidote to Lisp.
When I first started slinging PHP professionally, I hated it so much. At the time I took on a side project of messing around with 6502 asm, coding a little NES music engine. Only that could give me the release I needed from awful, awful PHP.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 02:34 PM
My previous company use to have candidates do a problem that involved supporting multiple input/output formats. I can't remember what the actual problem was but it had a few nice properties:

* Easy to explain
* Obvious places for future enhancements so you could see how they handled that.
* Very simple separation of concerns (parsing vs processing).
* Easy to come up with good tests.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 02:39 PM
Quote:
Originally Posted by gaming_mouse
any ideas?
How about modeling a project management system? Just come up with the feature set first.

Users, projects, milestones, payments, maybe user stories/features, tasks or events, etc..
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 02:53 PM
Quote:
Originally Posted by Shoe Lace
How about modeling a project management system? Just come up with the feature set first.

Users, projects, milestones, payments, maybe user stories/features, tasks or events, etc..
shoe,

i like idea but that's too big. remember we're talking 1-3 hours to have some set of requirement completely fulfilled with what they consider production ready code. think more like code "katas" with an information system bent. ideally i can give them a set of test cases they can run their finished product against. one thing i've learned is your requirements have to be really, really specific or the interview doesn't go well. the final product should be testably correct or incorrect. of course, the design of their solution and readability of their code is as important as correctness, but you do need correctness.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 04:06 PM
Quote:
Originally Posted by gaming_mouse
shoe,

i like idea but that's too big. remember we're talking 1-3 hours to have some set of requirement completely fulfilled with what they consider production ready code. think more like code "katas" with an information system bent. ideally i can give them a set of test cases they can run their finished product against. one thing i've learned is your requirements have to be really, really specific or the interview doesn't go well. the final product should be testably correct or incorrect. of course, the design of their solution and readability of their code is as important as correctness, but you do need correctness.
You mentioned not doing a todo list because someone might have modeled that previously so I figured maybe your intentions were to have them model it out and solve the rest in speech rather than code since you hinted at modeling data in your bullet list too.

Production ready seems a bit open ended. Is production ready being able to provision your own server, set everything up and be able to push code to it in an easy way along with ensuring everything passes whatever tests you put into place?

I can model and have a working version of a number of things with rails in a fairly short time but the difference between production ready and not production ready is a lot. It might be like 10% rails code, 60% work flow automation and 30% design/usability enhancements to make the transition.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-23-2014 , 05:08 PM
no rails, no server, nothing like that. sorry i think "production ready" was misleading.

all i meant was it should be code you would be proud to check into git. but no, we're not creating a production app -- indeed, i am specifically *not* testing the ability to do the kinds of thing you mentioned. the test is mainly meant to determine skill at writing readable code (and what the candidate considers readable code). i specifically don't give them my opinions on that, and use a prompt like "write what you consider to be fully refactored, clean code that you are proud of."
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote

      
m