Software craftsmanship is an approach to software development that emphasizes the coding skills of the software developers themselves. It is a response by software developers to the perceived ills of the mainstream software industry, including the prioritization of financial concerns over developer ...

learn more… | top users | synonyms

1
vote
2answers
175 views

Parser and interpreter knowledge as a way to gauge programmer ability [closed]

This is only anecdotal evidence but from my past encounters with programmers at various workplaces the programmers that understand the fundamentals of parsing and interpreting seem to be overall ...
4
votes
1answer
231 views

What recent studies point to the possible improvement a programmer can make as a result of personal character traits? [closed]

In Chapter 33, Personal Character of Code Complete (Second ed.) McConnell cites some studies such as those listed below in support of the assertion that 10-1 improvement is possible from efforts in ...
2
votes
3answers
1k views

Best practices / Design patterns for code generation [closed]

I'm working on a ground up code generator project, but I feel I might be reinventing the wheel. Does anyone know where I can find some best practices guidelines or design patterns for code ...
7
votes
2answers
286 views

How meaningful is the concept of “software craftsmanship”?

There seems to be a lot of buzz around software craftsmanship lately. Is it a well-defined concept? What does imply? To what extent is programming effectively a craft activity?
66
votes
14answers
4k views

How can I tactfully suggest improvements to others' badly designed code during review?

I'm a great believer in clean code and code craftsmanship, though I'm currently at a job where this isn't regarded as a top priority. I sometimes find myself in a situation where a peer's code is ...
69
votes
14answers
4k views

What should take precedence: YAGNI or Good Design?

At which point should YAGNI take precedence against good coding practices and vice versa? I'm working on a project at work and want to slowly introduce good code standards to my co-workers (currently ...
2
votes
2answers
625 views

emacs - project explorer and auto complete features - is it available?

I know that Emacs is a very powerful editor out there. I try to use it occasionally and want to learn it better. But to learn it better i have to use it more frequently than I am using now. But one ...
5
votes
8answers
4k views

Requiring Programming Portfolios In Interviews/Recruiting [closed]

I've heard about a few mentioning of programming portfolios. A programming portfolio being a significant amount of code or code segments. Is a programming portfolio a good indicator of the quality ...
17
votes
8answers
1k views

Releasing poorly written software [closed]

I've made a poorly written, yet fully functioning website, in (shock, horror, shock) PHP. Everything works as expected, I've implemented the necessary security measures: ...
18
votes
9answers
1k views

What is the path to JavaScript mastery? [closed]

I know how we start with JavaScript, we cut-and-paste a snippit to gain a little client-side functionality or validation. But if you follow this path in trying to implement rich interactive behavior, ...
10
votes
4answers
1k views

What should you bring to the table as a Software Architect?

There have been many questions with good answers about the role of a Software Architect (SA) on StackOverflow and Programmers SE. I am trying to ask a slightly more focused question than those. The ...
4
votes
2answers
88 views

Who gives direction to the overall product offering and innovation?

I sometimes wonder how CEOs or Founders of companies like Microsoft and Oracle manage the overall technology movement and product link-up. Take for example Oracle, it started with the database only ...
17
votes
9answers
430 views

How involved should our employers be in our education?

I consider myself a Software Craftsman. I like to attend local user groups and events to learn about new technologies as well as network with other software craftsman. We love to talk about what ...