Monday, December 14, 2009

You know the waterfall?

Apparently the model was introduced in an article saying how it was such a bad idea. However, there was a pretty picture and so it became a NATO standard. Oops.

Another specialist bites the dust

Farewell VDM.

Monday, December 7, 2009

Mosaic for modern OSs

I'm not sure why. So why not, I guess.

Sunday, December 6, 2009

Direct deposit considered harmful

Some 64,000 retirees, including 53,000 UFT retirees, who rely on electronic pension payments had funds involuntarily withdrawn from their accounts on Nov. 6, causing all sorts of grief for those counting on the money. The Bank of New York Mellon, which is the transferring agent for the funds, erroneously reversed the October benefits payments to retirees paid through electronic fund transfer. The total came to almost $189 million, according to the City Comptroller’s Office.


And this is why I take my checks in paper form.

Wednesday, November 25, 2009

Problems with GCC on SUA?

Well, probably not, there aren't a lot of people that take advantage of the fact that Windows has a POSIX personality. But if there are seg faults when you compile, the above thread will help you.

Sunday, November 15, 2009

JAPH

It's official, I'm a registered Perl developer

1800. David Solimano -- DSOLIMANO


Soon I shall unleash my parser on the world. No one will use it except me, and I will grow bitter.

IT industry deaths for 2009

A sad year indeed. I believe that I rue the loss of Palm OS most of all.

Saturday, November 7, 2009

Pipe Viewer

Ever wondered what was going on inside a pipeline? Well wonder no more! IBM has put together a neat little utility that shows you what's happening.

Thursday, November 5, 2009

Getting just the date

Just because I run into this problem a million times a month and always forget the correct magic:

SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE()))

Wednesday, November 4, 2009

Sunday, October 25, 2009

User friendly and deletes your data

Apparently there are circumstances where Apple's Time Machine backup product will delete all of your old backups to make room for some new data, like after an upgrade or when attaching a new drive to the system.

This is exactly why I use tapes. See the following dialog:


OS X - "Please insert week 3 user data backup tape, I need to wipe it so that I can replace your backups with copies of OS X binaries though you already have those on DVD"

Me - "No"

Thursday, October 15, 2009

Password PSA

Just a reminder (I am guilty of this as well) that it's a bad bad idea to use the same password on multiple sites, as many sites do scary things like store passwords as plaintext. Yikes!!!

Link is to a discussion of the issues and some software which might be able to help you out with password generation/management.

Tuesday, October 6, 2009

Decimal formatting in .Net

One day I was having problems with decimal numbers showing up as strings with lots of zeros after the decimal point. Since they were whole numbers, I had naively expected that they would always be displayed without any zeros, at least with the format string I was using.

Alas, the documentation disagreed with me.

Apparently the precision of the decimal will show up when calling ToString in the manner in which I was calling it. So my unit tests all passed because I was constructing a decimal 42, rather than a decimal 42.00000.

Microsoft 1, me 0.

Thursday, October 1, 2009

Best programming joke ever

Recursion is a whole topic in its own right and the source of the only good computer science joke I know – dictionary definition of recursion “Recursion – see recursion”.

Hercules goes commercial

Wednesday, September 23, 2009

This should be an iShares ETF

I will leave which ETF to your fertile imagination.

Saturday, September 19, 2009

Reg NMS 2?

Some thoughts on what's going on in the world of dark pools vs displayed markets. I tend to be partial to displayed markets with public information and what have you, perhaps the SEC is moving in a similar direction.

Sunday, September 6, 2009

Brick Science

Flounder comments on what walls would be like if masons were exposed to a "brick science" program equivalent to the "computer science" program that most people get. So true!

Flounder is an excellent resource for win32 programming, btw, if that happens to be your deal as it is mine. He is somewhat MFC centric, but pretty much everything is worth a read.

Sunday, August 23, 2009

The latest in UPS control technology

Apparently if you have an APC UPS there is a program which is supposed to kick PowerChute's butt back to the 90's, which to be honest is the last time that stuff was really updated.

Saturday, August 15, 2009

High frequency trading

I tend to be against this sort of stuff as I think smart people could be better used. This article presents a defense of the practice and also points out how silly the people who oppose it sound.

My awakening began when I read a recent Times column by Nobel laureate Paul Krugman, who commented that much of today's trading is a "socially useless" activity, as opposed to a higher calling, like say, writing opinion pieces. He ripped apart traders for the crime of making money "mainly by outsmarting other investors, rather than by directing resources to where they're needed."

. . . .

But I became a little worried when I realized how low the professor sets the bar for non-public information. He's not talking about Gordon Gekko learning about the impending takeover at Blue Star Airlines. Far from that, Dr. Krugman first cites high-frequency traders, who by processing public information faster than the next trader, are damaging society.

The implicit argument is that since not everyone has "superfast" computers, the information that high-frequency traders are reading from the public tape is still essentially non-public until everyone has had time to read and digest it. It's a good point--why should a trader have an advantage over his competition just because his broker splurged on a nitrogen-cooled, tungsten-coated nanochip processor? Shouldn't algorithm providers be polite and wait until the old-school broker with the paper ticker tape and the Atari 800 catches up?


My prediction is that the Obama administrations next push will be to require all computers which interact with market centers to be Atari 800s. My vintage computing hobby will finally be vindicated and I will be able to sell my equipment for tens of thousands of dollars.

How to be a programmer

Some useful technical and practical tips. GDPL licensed, of course. Useful bits include "Don't work 80 hours a week" and "Go home if you are about to commit homicide".

Saturday, July 25, 2009

Tibco RV C# memory issues

So my company tends to have a lot of stuff written to use Tibco's Rendezvous, fine product that it is. We also tend to write a lot of stuff in C# and various other dotnet languages.

Apparently this is a problem.

In low message volume apps, we have no issues. However, with high message volumes, our unmanaged memory spikes and lots of bad things happen. If we look at the messages, we're not falling behind so that's not the issue. It seems that RV is not properly disposing of the objects or at least not fast enough.

Anyone else seen this? I've heard rumors that the COM interface doesn't suffer from this issue, and the C++ interface is solid (causing us to make some C# -> C++ conversions).

Compuserve is out

Farewell good friend.

Sunday, July 19, 2009

Copyright, then and now

Amusingly, a hunderd years ago music firms were arguing that an author's copyright on his work did not extend to reproductions in non-live media because he lost no revenue from the new format. My how times have changed.

Sunday, June 21, 2009

Status update 4

Still frustrated by the lack of infrastructure, but I suppose it may be possible to reuse some of the stuff that I've been working on at home.

Another frustrating point is that there seem to be continual new verisons of software with regressions, or outright deprecated functionality. It's hard to build something when the rug keeps getting pulled out from under you because "no one is using that".

People are starting to come to me with random requests, which is, I think, a big reason why I took the job. Hopefully I can execute to their satisfaction.

Monday, June 1, 2009

Sunday, May 17, 2009

Backup horrors

Two words: Offline backups.

Conditional answer

Ecce:

The second and third operands of the ?: operator control the type of the conditional expression. Let X and Y be the types of the second and third operands. Then,

  • If X and Y are the same type, then this is the type of the conditional expression.

  • Otherwise, if an implicit conversion (Section 6.1) exists from X to Y, but not from Y to X, then Y is the type of the conditional expression.

  • Otherwise, if an implicit conversion (Section 6.1) exists from Y to X, but not from X to Y, then X is the type of the conditional expression.

  • Otherwise, no expression type can be determined, and a compile-time error occurs.



Moral of the story: Know your language spec.

Monday, May 11, 2009

Conditional Mystery

Imagine a C# function like so:

public object Foobar(double baz_)
{
return baz_ < 12 ? new Foo(baz_) : baz_;
}

where Foo has a function as such:

public static implicit operator Foo(double d_)
{
return new Foo(d_);
}

What is the type of Foobar(2)? Foobar(15)? The shocking answer revealed whenever I get around to blogging next. Yes this was causing an outage in production.

Monday, May 4, 2009

Status update 3

Work progresses on many fronts. I had forgotten how much random foolishness needs to be dealt with. We have unreplicated databases, strange source control, and a distinct overlap between production and development.

I think I'm getting hives.

Oh well, more work for me I guess. Hopefully I can leverage some of my knowledge of how things are done elsewhere to great utility.

Friday, April 24, 2009

Morality and Markets

The management teams and bankers involved in the recent deals told us that the buyside players are changing. Many of the hedge funds and fast money players are gone, heralding a return of the long-term investor. This is important for the newly public company because it gives them the ability to create a better shareholder base aligned with their strategic objectives.


And this is in line with markets as a positive force:

My last point is something we often forget to think about. The IPO is an important job engine for our economy. These two companies employ about 2,000 employees. Bridgepoint didn't exist five years ago. Rosetta Stone had 10mm in revenue five years ago. Both companies create jobs, provide for families and create wealth.

Friday, April 10, 2009

Status update 2

Finished my resignation yesterday. It was not nearly so exciting as I had initially hoped it would be. I also made a friend yesterday, which leads me to believe I could have had a much more satisfying experience if I had been more open to the possibility.

Alas.

Wednesday, April 8, 2009

Status update 1

Second to last day at Big Firm. Much time was spent on documentation and fixing a few //TODOs that were too embarrassing to leave to someone else.

I will indeed miss being part of a global community of like-minded individuals.