Annotated Posts

109
votes
7answers
8k views

You're hired to fix a small bug for a security-intensive site. Looking at the code, it's filled with security holes. What do you do? [on hold]

I've been hired by someone to do some small work on a site. It's a site for a large company. It contains very sensitive data, so security is very important. Upon analyzing the code, I've noticed it's ...
0
votes
0answers
59 views
+50

Interactive help in a statically-typed language with overloading

One of the nice features of IPython is that I can inspect a function. In [1]: def inc(x): ...: """Increments a number""" ...: return x+1 ...: In [2]: inc? Type: function ...
26
votes
20answers
110k views

Is learning C# as a first language a mistake? [on hold]

I know there are similar questions on here, which I've read, but I recently read this post by Joel Spolsky: How can I teach a bright person, with no programming experience, how to program? And it ...
63
votes
31answers
57k views

Do I need to go to a big-name university? [closed]

As a soon-to-be graduating high school senior in the U.S., I'm going to be facing a tough decision in a few months: which college should I go to? Will it be worth it to go to Cornell or Stanford or ...
52
votes
12answers
15k views

What is a Ph.D. good for in the software industry? [closed]

I'm a self-taught programmer and have just started a computer science degree to supplement my knowledge and fill in the gaps. However, I'm already debating the direction of my education. I want a 4 ...
32
votes
14answers
70k views

Does having Master's degree in Computer Science help your career? [closed]

I am curious about experiences of programmers who have gone beyond college or university and now work in the industry. I am not talking about academia (you need PhD there anyway). Do you have a ...
8
votes
2answers
11k views

How important is Discrete Mathematics for a Computer Scientist? [closed]

As the title says, How important is Discrete Mathematics for a Computer Scientist? Background: I'm pursuing a Master's degree with a focus on fundamentals such as Algorithms, Complexity and ...
12
votes
12answers
14k views

Assembly as a First Programming Language? [closed]

How good of an idea do you think it would be to teach people Assembly (some variant) as a first programming language? It would take a lot more effort than learning for instance Java or Python, but one ...
13
votes
6answers
27k views

Are certifications through O'Reilly worthwhile? [duplicate]

Other than being able to put "I know Python" on a resume, are the certifications from O'Reilly School of Technology (they are issued by the University of Illinois) any good for obtaining employment? ...
55
votes
5answers
22k views

Audiobooks for programmers? [closed]

I'm a programmer with a two-hour round trip commute to work each day. I'd like to fill some of that time with audiobooks about software development. Any audiobooks that would help me become a better ...
13
votes
12answers
11k views

Why is C++ often the first language taught in college? [closed]

My school starts the computer science curriculum with C++ programming courses, meaning this is the first language that many of the students learn. I've seen that many people dislike C++, and I've ...
14
votes
16answers
15k views

Should I learn a programming language before I attend college for Computer Engineering? [closed]

I've dipped my toes in C++ programming but I haven't actually delved into it. I want to know if I actually need to learn it or any other languages before I go to college for Computer Engineering or ...
58
votes
15answers
21k views

I don't know C. And why should I learn it? [closed]

My first programming language was PHP (gasp). After that I started working with JavaScript. I've recently done work in C#. I've never once looked at low or mid level languages like C. The general ...
52
votes
11answers
13k views

Is there a canonical book on mathematics for programmers? [closed]

I'm a self-taught programmer. I am honestly not good in math. What advice you can give to improve my Mathematical skills so that I will not be so insecure around my fellow programmers? What are the ...
76
votes
19answers
20k views

How do I improve my coding skills? [closed]

Here's a bit information about me, before starting with the question. I am a Computer Science Undergraduate, Java being my primary coding language. The basic problem in my University are the ...
94
votes
27answers
18k views

Why do people use programming books? [closed]

I find that when someone asks what is the best way to learn how to program, people usually provide them with references to a bunch texts written by various authors. However I don't believe many ...
2
votes
3answers
132 views

Using ESB for database synchronisation / replication

We're starting to look at implementing an ESB / Microservices architecture. I (think) I know about the concepts, but there's one thing I don't seem to be able to get a good idea about: data ...
3
votes
4answers
16k views

Example for explaining object-oriented concepts [closed]

What are some good examples for illustrating the concepts of object-oriented programming? I'm talking about sample classes, classes that would have inheritance, overriding, etc. The only one I can ...
46
votes
13answers
12k views

How to find a programming mentor? [closed]

I decided to learn programming. I've been reading SO for few days, and I think I will start with C++, as I read some articles. I am aware of loops, arrays, program logic and objects a little and I ...
100
votes
10answers
62k views

How can I teach a bright person, with no programming experience, how to program? [closed]

I have been asked to take a person in our IT department who has no programming experience but is a smart and capable person and help him move into programming at lets say an entry level developer ...
6
votes
9answers
6k views

Importance of CS degree when applying for development jobs? [duplicate]

Possible Duplicate: Is a university education really worth it for a good programmer? I'm currently looking for a job as a web developer, and I have ~3 years experience in the field and know ...
16
votes
16answers
5k views

Is software development an engineering discipline?

Can software development be considered engineering? If no, what are the things that it lacks in order to be qualified as an engineering discipline? Related to this is this question on Stack Overflow ...
93
votes
18answers
14k views

How to explain a layperson why a developer should not be interrupted while neck-deep in coding? [closed]

If you just consider the second part of my question, "Why a developer should not be interrupted while neck-deep in coding", that has been discussed a number of times by smart people. Heck, even the ...
9
votes
13answers
12k views

What are some good, simple examples for queues? [closed]

I'm teaching CS2 (Java and data structures), and am having some difficulty coming up with good examples to use when teaching queues. The two major applications I use them for are multithreaded message ...
94
votes
14answers
14k views

Learn programming backwards, or “so I failed the FizzBuzz test. Now what?” [closed]

A Little Background I'm 28 today, and I've never had any formal training in software development, but I do have two higher education degrees equivalent to a B.A in Public Relations and an Executive ...
50
votes
6answers
21k views

How to manage github issues for (priority, etc)? [closed]

I'm new to github, and am looking for advice on how to manage issues. I'm used to having priority and other ordering options but see that none exist. How do others manages issues during the ...
34
votes
8answers
23k views

Library vs. framework vs API? [closed]

What is the difference between a library, framework, and API? They all seem the same to me. I would like to hear peoples thought of this.
19
votes
4answers
4k views

Is Haskell good at teaching fundamentals of mathematics?

I'm involved in teaching mathematics to classes with requirements such as AS and A level Mathematics specification. Class books normally provide examples of computer software applied to mathematics ...
11
votes
8answers
15k views

Do higher resolution laptop displays matter for programmers? [closed]

I'm buying a new laptop that I'll be using mainly for programming. A couple of options that really intrigue me are the Asus Zenbook UX31A and the new Retina Macbook Pro. It's obvious that the ...
23
votes
17answers
7k views

Is “Computer Science != Software Engineering” an excuse to teach programming poorly?

We've all heard it; whenever there's a discussion about CS grads having poor development skills someone eventually says, Computer science isn't software engineering. The problem that I see is ...
16
votes
5answers
4k views

What are the best resources for learning about concurrency and multi-threaded applications? [closed]

I realised I have a massive knowledge gap when it comes to multi-threaded applications and concurrent programming. I've covered some basics in the past, but most of it seems to be gone from my mind, ...
30
votes
17answers
6k views

How to reduce the number of bugs when coding?

No one's perfect, and no matter what we do, we are going to produce code that has bugs in it from time to time. What are some methods/techniques for reducing the number of bugs you produce, both when ...
86
votes
22answers
8k views

Is OOP hard because it is not natural?

One can often hear that OOP naturally corresponds to the way people think about the world. But I would strongly disagree with this statement: We (or at least I) conceptualize the world in terms of ...
257
votes
33answers
17k views

How can I deal with the cargo-cult programming attitude?

I have some computer science students in a compulsory introductory programming course who see a programming language as a set of magic spells, which must be cast in order to achieve some effect ...
72
votes
37answers
5k views

How to handle people who lie on their resume [closed]

I'm conducting technical interviews to fill a few .NET positions. Many of the people I interview really do know .NET pretty well, but I find at least 90% embellish their skillset anywhere between "a ...
91
votes
7answers
24k views

What functionality does dynamic typing allow? [closed]

I've been using python for a few days now and I think I understand the difference between dynamic and static typing. What I don't understand is under what circumstances it would be preferred. It is ...
11
votes
10answers
7k views

Java or C++ for university CS courses?

I'm in the throes of getting myself enrolled in school to get a CS degree. The school I am looking at actually offers both Java- and C++-based for the introductory software development courses ...
94
votes
16answers
15k views

How to market yourself as a software developer? [closed]

I have noticed that this is a frequent issue among younglings from technical areas such as ours. In the beginning of our careers we simply don't know how to sell ourselves to our employers, and ...
12
votes
12answers
4k views

What skills are essential for professional programming that are not commonly taught in schools? [closed]

I am a first year computer science major. I went to a job fair, handed out resumes, much to my surprise I got an interview and eventually an internship as a developer. I explained to the interviewer ...
36
votes
11answers
4k views

Constructor-only subclasses: Is this an anti-pattern?

I was having a discussion with a co-worker, and we ended up having conflicting intuitions about the purpose of subclassing. My intuition is that if a primary function of a subclass is to express a ...
24
votes
12answers
28k views

What is the best local version control tool for personal use? [duplicate]

Possible Duplicate: Version control for independent developers? I was wondering if there is a tool out there which acts as Visual Source Safe but only on local machine. Basically I would ...
152
votes
11answers
53k views

How can I find a good open source project to join? [closed]

I just started working a year ago, and I want to join an open source project for the same reasons as anyone else: help create something useful and develop my skills further. My problem is, I don't ...
197
votes
21answers
28k views

Leaving intentional bugs in code for testers to find

We don't do this at our firm, but one of my friends says that his project manager asked every dev to add intentional bugs just before the product goes to QA. This is how it works: Just before the ...
45
votes
11answers
3k views

What are the arguments against or for putting application logic in the database layer? [closed]

Most software developers want to keep application logic in the application layer, and it probably feels natural for us to keep it here. Database developers seem to want to put application logic in the ...
0
votes
3answers
127 views

Should a scrum team estimate time for the user stories during Sprint Planning, or before it? [duplicate]

I am newbie for scrum. Lets say we have all the user stories for the product, and the product owner gave them the priorities. Now as a team, when we should estimate times for these stories? Should we ...
34
votes
7answers
3k views

How to make significant technical decisions given very little time

I have got 2 days for making a very serious decision about the tools and platforms that my company is going to use in order to port its WPF application to Linux / Android / iOS whatnot. Obviously I ...
102
votes
16answers
17k views

How can I tell in an interview if a programmer is passionate about programming? [closed]

While most interview questions are focused on current knowledge of a candidate or check his/her skill to solve algorithmic problems I would like to hire a developer who is passionate about ...
51
votes
11answers
5k views

How do I avoid cascading refactorings?

I've got a project. In this project I wished to refactor it to add a feature, and I refactored the project to add the feature. The problem is that when I was done, it turned out that I needed to make ...
106
votes
15answers
16k views

Is it always a best practice to write a function for anything that needs to repeat twice?

For myself, I can't wait to write a function when I need to do something more than twice. But when it comes to the things that only appear twice, it's a bit more tricky. For code that needs more than ...
17
votes
1answer
1k views

Books and stories on programming culture, specifically in the 80's / early 90's [closed]

I've enjoyed a number of (fiction/non-fiction books) about hacker culture and running a software business in the 80's, 90's. For some reason things seemed so much more exciting back then. Examples ...