Most Popular

1500 questions
60
votes
5 answers

R vs Python for data analysis

I have been programming for about a year and I am really interested in data analysis and machine learning. I am taking part in a couple of online courses and am reading a couple of books. Everything I am doing uses either R or Python and I am…
60
votes
6 answers

Is there a purpose for using pull requests on my own repo if I am the only developer?

So I got started with a real project of mine on GitHub and things are going pretty well and ideas are flowing a lot faster than I initially thought. In order to keep things organized, I setup some branches so I can develop different features…
marco-fiset
  • 8,761
60
votes
8 answers

How do I prove or disprove "God objects" are wrong?

Problem Summary: Long story short, I inherited a code base and a development team I am not allowed to replace and the use of God Objects is a big issue. Going forward, I want to have us re-factor things but I am getting push-back from the teams who…
honestduane
  • 725
  • 1
  • 6
  • 5
60
votes
11 answers

How to tell whether your programmers are under-performing?

I am a team lead with 5+ developers. I have a developer (let's call him A) who is a good programmer, who writes good clean, easy to understand code. However he is somewhat difficult to manage, and sometimes I wonder whether he is really…
A Team Lead
  • 719
  • 1
  • 6
  • 9
60
votes
3 answers

How is architectural design done in an agile environment?

I have read Principles for the Agile Architect, where they defined next principles : Principle #1 The teams that code the system design the system. Principle #2 Build the simplest architecture that can possibly work. Principle #3 When in doubt,…
BЈовић
  • 14,031
  • 8
  • 62
  • 82
60
votes
11 answers

Why is the use of abstractions (such as LINQ) so taboo?

I am an independent contractor and, as such, I interview 3-4 times a year for new gigs. I am in the midst of that cycle now and got turned down for an opportunity even though I felt like the interview went well. The same thing has happened to me a…
Matt Cashatt
  • 3,315
60
votes
5 answers

What are the design principles that promote testable code? (designing testable code vs driving design through tests)

Most of the projects that I work on consider development and unit testing in isolation which makes writing unit tests at a later instance a nightmare. My objective is to keep testing in mind during the high level and low level design phases itself.…
CKing
  • 1,012
60
votes
18 answers

Working on someone else's code

I have hardly a year's experience in coding. After I started working, most of the time I would be working on someone else's code, either adding new features over the existing ones or modifying the existing features. The guy who has written the…
Xavi Valero
  • 301
  • 1
  • 5
  • 7
60
votes
11 answers

How to represent a Rubik's Cube in a data structure

If I am attempting to simulate a Rubik's Cube, how would you create a data structure to store the cube's state in memory, with X number of tiles per side? Things to consider: the cube can be of any size it is a Rubik's cube, so layers can be…
Mel
  • 1,121
60
votes
24 answers

How can I explain the difference between NULL and zero?

Working on a problem that uses the percent change formula: percent change = 100 * [(new value - old value) / old value] How would I explain the difference if new value or old value = NULL, rather than 0 to someone who might not be a programmer? My…
O.O
  • 668
60
votes
16 answers

How to stop the development spec from changing in mid development?

Problem: It seems with almost every development effort I'm involved in, no matter how much time is spent planning prior to starting development, there is always a large amount of changes required either midway or towards the end of the project.…
David
  • 735
60
votes
3 answers

What is the name of ** in python?

When programming Python I sometimes do a ** to make a conversion. I understand what it does but what data structures am I manipulating? A dict and what is the other? An array? Is there a name for the ** operator?
Niklas Rosencrantz
  • 8,068
  • 17
  • 57
  • 96
60
votes
8 answers

Avoiding "Smart Guy" Syndrome on Team Projects

A lot of bad practices were being committed at the beginning of a project, and I recognized them and fought against all of them. Since I didn't pick and choose my battles, my boss now assumes anything out of my mouth is an over complicated response,…
yurisich
  • 1,391
60
votes
15 answers

How important is multithreading in the current software industry?

I have close to 3 years experience writing web applications in Java using MVC frameworks (like struts). I have never written multithreaded code till now though I have written code for major retail chains. I get a few questions on multithreading…
user2434
  • 1,277
59
votes
3 answers

What is the difference between K&R and One True Brace Style (1TBS) styles?

I have read the Wikipedia article on Indent Styles, but I still don't understand. What is the difference between K&R and 1TBS?
GavinR
  • 693