discussion

What do you think of PHP's new namespace separator?

PHP 5.3 (alpha) has had namespace support for a while using '::' as a separator. But due to some problems with ambiguity with this separator, the PHP team has decided on '\'. From a recent story on Slashdot: PHP finally is finally getting support for namespaces. However, after a couple hours of conversation, the developers picke...

Is anyone using D in commercial applications?

Ok, this is a little open ended, but I think D could do with a bit of promotion. Personally I think D is a superb implementation language - but it's not mainstream enough yet for many people to take it seriously. Since it's not commerically backed, the only way to change that is through community effort and visibility. So I'd really li...

Is there a good argument for software patents?

Now that it looks like software patents are going to be severely limited, does anyone have a good argument for keeping them. It seems like copyright law serves software fine and patents just add overhead to what should be an almost frictionless process. Are there any examples of software that wouldn't have been written if not for paten...

What do you think of WinDev?

I have a job opportunity. They use WinDev. I did some research about it and, although it seams pretty prometting, the website claims that it's used by only 100,000 developpers. Have you worked with this language? What's your thoughts? ...

Ethics and Coding

I've been thinking about how the technologies which I see as cool, can provide governments and private corporations with tools to do things which are not so cool. I'm thinking along the lines of involvement with companies involved in warfare or the weapons industry, but I suppose there are many scenarios where a person's ethical stance ...

Building a Webapp Around User-Workflow

The more I think about how I use computers, the more I become convinced that 'workflow' is the key factor in terms of productivity, and the way I should go about designing interactions. I'm thinking of workflow as the way we approach and manage data, information and knowledge as it relates to a task. I'm starting out with my first web-...

User ownership of personal information

At the moment it seems that most webapps store their user-data centrally. I would like to see a movement towards giving the user total access and ownership of their own personal information and data; ultimately allowing the user to choose where their data is stored. As an example - with an application like facebook, the user's profil...

todo.txt and task management

Apologies if this has been covered frequently, but I was wondering about how other people approach personal task management. I've read (parts of) GTD, proceeded to get excited, installed a tonne of plug-ins all over the place, then let it all fall by the wayside. I've used todoist, outlook, google calendar, project. I've tried writing ...

Default string initialization: NULL or Empty?

I have always initialized my strings to NULL, with the thinking that NULL means the absence of a value and "" or String.Empty is a valid value. I have seen more examples lately of code where String.Empty is considered the default value or represents no value. This strikes me as odd, with the newly added nullable types in c# it seems li...

One could use a profiler, but why not just halt the program?

If something is making a single-thread program take, say, 10 times as long as it should, you could run a profiler on it. You could also just halt it with a "pause" button, and you'll see exactly what it's doing. Even if it's only 10% slower than it should be, if you halt it more times, before long you'll see it repeatedly doing the unnec...

Best IT/back-office system hacks?

Lots of people have things that their systems do for them or for their teams. Source control post-commit hooks are a standard example: have an automated build system that checks out the latest source, compiles, tests, and packages it is a back-office hack that most of us probably use. What other cool things have you done? ...

How do you counter that "X" language isn't ready for "Banking" or X mission critical app?

So today I was explaining how Groovy uses the "Meta Object Protocol" or MOP to someone. More specifically I was explaining how Grails and GORM use the MOP to provide dynamic finders. The queston I got once the use of the MOP was sufficiently explained was, "Would you use that technology in banking?". My answer is why not? I've worke...

Is functional programming the next step towards natural-language programming?

This is my very first question so I am a bit nervous about it because I am not sure whether I get the meaning across well enough. Anyhow, here we go.... Whenever new milestones in programming have been reached it seems they always have had one goal in common: to make it easier for programmers, well, to program. Machine language, opcode...

What is more important, testability of code, or adherence to OOP principles?

My teams evolution of TDD includes what appear to be departures from traditional oop. Moving away from classes that are self sufficient We still encapsulate data where appropriate. But in order to mock any helper classes, we usually create some way to externally set them via constructor or mutator. We don't use private methods, ever. ...

How can the Eight Commandments of Source Code Control be modernized?

How do you update this? I've never seen any current team that actually "checks out" a file. I don't compile, either. These seem to be from before the days of branching. You shall check in early and check in often. You anger your coworkers when you check out a file and insist on keeping it checked out until some future point in time tha...

What can we do to encourage more women to join the programming field?

I saw this question that got closed for being subjective and argumentative and this one on how to encourage someone in general. I felt like the first was a valid question, but perhaps the question was put forward in the wrong manner. The second doesn't seem to address this particular issue. As a father of a daughter with very good mat...

Are there specific "technical debts" that are not worth incurring?

There are (at least) two ways that technical debts make their way into projects. The first is by conscious decision. Some problems just are not worth tackling up front, so they are consciously allowed to accumulate as technical debt. The second is by ignorance. The people working on the project don't know or don't realize that they are i...

Appreciating design patterns

I have been taught design patterns, I have used them at work, but... they have not resulted in better communication. none of us in our team (all adept users) really appreciate design patterns. (we know the textbook "why") What are your experiences in using design patterns in your organization? ...

Language features you should never use?

A recent post about the 'with' statement in Delphi - which in practice I never use because it trades clarity and ease of debugging for superficially 'cleaner' looking code got me thinking; what other language features, in any language, do you think should never be touched? - or at least avoided where at all possible? The classic example...

Why Doesn't Sun Release Their Own Java Implementation for OS X?

Sun's Java SE 7 is set to release next year, and we still have yet to see a stable, complete implementation of Java SE 6 from Apple. Why doesn't Sun release their own implementation of Java for OS X? ...