I’m not sure if that is a real term or not, but I have a rather specific meaning for it:
A completely useless feature added to a product because it makes a good demo.
I’m not sure if that is a real term or not, but I have a rather specific meaning for it:
A completely useless feature added to a product because it makes a good demo.
(originally written the day after that article came out – I ended up posting snide comments on his blog, which was pretty dumb. I tend to do stupid things when I’m angry, and I’m not sure I did much good by telling the guy off on his own blog. Then again, in my slight defense, I was trying to prevent his blog from influencing people who don’t use git from being scared away. Of course, my nasty remarks probably pushed people the other way: “This is how the git community reacts to people who need help? What dicks.” So, a message to everyone – I don’t represent the git community, just my annoying little self)
When git first came out, it was hard. Really hard. Annoyingly hard. Linus made a decision, early on, to do the following for git:
And since, early on, it was just what he built (plus a few contributions from others), he got #1 and #2 down pat, but completely punted on #3.
(more…)
(Began sometime in the middle of 2008, though we are still “struggling valiantly”)
A coworker and I have been struggling (valiantly, I would say) to solve some rather hairy lifetime-related issues at work this week. A sizable portion of our current work involves the interop between managed (C#) and native (C++/COM) code, which, well, doesn’t work out all that well in sufficiently complicated scenarios.
Not that this is an easy problem to solve, mind you. The problem is one of semantics.
</blog hiatus>
Without getting too much into details, the most frustrating thing I have to deal with at work is our general development infrastructure, the worst offender being version control.
Back when I was a TA, I found that a few people had a very curious misconception. In C++, they thought, if you never deleted an object, that object would never ever get freed until you restarted your computer. Basically, that a memory leak is memory that is lost and gone forever (for all intents and purposes).
Almost every person I work with has some type of programming project they work on at home. Michael (last I checked) is writing a synthesizer to go along with the midi controller keyboard he now owns, Matthew is writing an application so that he can update his music library’s metadata more easily, and other people have other tiny projects that they work on when the go home at night.
Me? I watch southpark until I fall asleep.
Some days, I wonder if something is wrong with me. Like I’m a bad geek for not programming when I go home. Hell, my own brother puts most of us to shame, having started what (I think) is the most popular linux PVR project in existence, MythTV.
So what’s wrong with me?
Slashdot is running an article about how Singularity is now Open Source, and I’m surprised to see that, of all places, Slashdot missed the obvious point.
Return to the “sharing is caring” MSR-LA (before it was the MSR-SSLA or something like that):
4. That Microsoft is granted back, a non-exclusive, irrevocable, royalty-free, and sub-licensable license to, for any purpose, reproduce, publicly perform or display, install, use, modify, distribute, make and have made, sell and transfer modifications to and/or derivative works of the Software source code or data that you provide to Microsoft through the CodePlex tool or otherwise make directly available to Microsoft.
That’s right, ladies and gentlemen. The polite “share-alike” continues.
Of course, if you want to, say, try out one that isn’t an assrape in disguise and runs actual applications, jump over to JNode. No promises, but using this one won’t require you to sleep on your stomach for weeks afterwards.
It never ends. Today, somebody sent a question to a linux questions alias about some Microsoft specific compiler extension on Windows and what equivalent exists, if any, in gcc. As always, the very first google search result for the name of the declaration and “gcc” yields the answer.
Then again, he probably used Live search, and the first answer probably was a picture of a goat or something. Yay for smarter search!
I just saw the funniest thing.
I’m watching this talk, by Eric Meijer, about Visual Basic. During the talk, he keeps bringing up examples of where languages “stole” features from VB. The first (and marginally less funny), is when he basically states that modules (i.e. collections of functions) were invented by Visual Basic. That’s right.
Every so often, I get asked questions along the lines of one of these:
Question type #1:
I need a type that is exactly n bytes/bits long. How do I get this?
Question type #2:
On machine x, the size of some type(usually wchar_t) is wrong! How do I fix it?
I actually just got the second question, hence the reason for this post (although that guy won’t see the answer, because he was a dick). The short answer is this:
(Most) types in C and C++ are either only relatively sized or implementation defined.