Archive for the ‘Vendors’ Category

Surprised I Got Goliath to Flinch

Tuesday, February 5th, 2008

Just got out of a meeting with my manager. Seems a vendor I've been dealing with here at the Shop is unhappy about the fact that I have posted my experiences dealing with them and their products. Given that they are a multi-million dollar company and I'm a developer, the decision to take all references to them, their people, and their software down was easy. I just did it.

But it's gotten me to thinking... why threaten legal action to someone who's unhappy with your product? It's not like there are real trade secrets that I revealed, at least none that I recognized as such. Sure, there were discussions about architecture and the pros and cons of the design, but I have a feeling that had I said nothing but glowing things about the company and product I might not have been asked to remove them. But maybe so. Maybe they just don't want people talking about them.

Either way... I took it down. But I can't help but wonder who was watching and why. Maybe they have a legal team just scanning the net 24x7 looking for things like this. It's certainly possible. It's just amazing to me to think that my comments generated this level of excitement.

Microsoft Offers $44bil for Yahoo

Friday, February 1st, 2008

pirate.jpg

Again, I try to stay out of the mergers and acquisitions business realm, but sometimes I have to say something. Microsoft's offer of $44bil for Yahoo is one such time. There was a time that Microsoft was the best thing for the computer industry. Prior to Windows and it's abstraction of the peripherals like displays and printers, every application needed to have people on staff to work out the graphical interface and write drivers for each printer they wanted to support. WordStar was a classic example. Gobs of driver disks and you have to make sure that what you needed to be supported was, in fact, supported by the code.

Major hassles. Then came Windows with it's printer driver model and graphics support. Application support teams no longer had to support each and every printer and display. Way easier for someone to make an app now. This was really the 'gift' of Windows and Microsoft. And it was good.

Similarly, in the beginning, there were a few web crawlers, like lycos - ones that you could use, but you almost always had to have several, and there were even applications on some platforms that would hit several search engines to try and get you something useful with a single query. Then came Yahoo. Again, it was an early pioneer, and it made a big difference in the search engine landscape. It also was one of the first to have 'busy' home pages - portals, many called them, with news, groups, etc. all on the front page.

But with absolute power comes corruption. Unfortunately, Microsoft, like IBM had to battle a horrible reputation that it had taken years to build. Yahoo sat on it's lead and didn't work to keep itself on top of the heap. Now Microsoft finds itself in the position of playing 'catch-up' to Google in the search engine space. Yahoo has long since fallen to Google as well. It's not surprising that Microsoft (with tons of cash) tries to close the gap on Google with the acquisition of Yahoo, but you can't really catch up to #1 by buying #2. The best you can do is to close the gap a bit.

In the end, what needs to happen at Microsoft is they need to go back to the days when they were innovative and not just making money. Like IBM, they need to repair their image with the developers who ultimately make them look good. Take the time to embrace the non-commercial developer. Make amends, and over the long haul, they'll get back into the coveted spot they once held. But it's going to take more than buying Yahoo to do it.

MarsEdit Update to v2.1

Friday, February 1st, 2008

MarsEditIcon128.jpg

This morning I saw that MarsEdit had gone to v2.1 with a bunch of improvements in the release notes. Honestly, the performance is nice, but there has been one little annoying thing that I've mentioned to the author and he's yet to address - probably because he thinks it's not necessary. That is the minimal size of the posting window.

Window sizes, I've come to learn, are a very personal thing. I've had some people look at my 80x24 terminal screens and think I was insane. But it's what I learned on, and the idea of having a big, wide, terminal is just something I may never use. I'll always deal with 80 column editor windows, and "taller" terminals are OK, and I use them often enough, but for a lot of the work I do, smaller is better.

So when I started using MarsEdit, I liked the fact that it could be personalized to the weblog I had (WordPress), and that just about everything about it was configurable. Very nice. But then I tried to make the posting window narrower - like an editor window, and it stopped short of what I wanted. Now, I'm guessing that I can go into the nib file and change this minimum size, but I sent the author an email and his response was that he needed to make sure there was room for the 'sidebar' in the window. Well... I don't use the sidebar, and do I've got more space than most.

He said he'd look at it, but I'm guessing that it's not going to amount to anything. Maybe I'll ask him again today.

Anyway, the update is nice, and the tool is, in general, a wonderful way to post to just about all the weblogs out there.

UPDATE: basically, he said 'Take IB and change the nib'. Not what I hoped, especially with updates, but it's always been a possibility.

The Conflict Between Individual and Group Goals

Thursday, January 10th, 2008

NetNewsWire.jpg

First, this morning NetNewsWire 3.1 was released, with what was announced as primarily a performance-improvement based release. This is great news. Not that NetNewsWire was a pig, or anything, but when they take the time to work on the code code of an app (like I have been doing to the server) it shows a commitment to the app at a level you don't see when you're just trying to add new features to make users happy. So, Great Job to Brent S. on the release. I'm running it already.

The next bit of news that comes from Brent and the NewsGator folks is that NetNewsWire is now freeware. That's right - totally free. All of the NewsGator 'personal' products are free. They look at this as the way to get mind-share and name recognition and it's probably going to work. There are a lot of people using something like NetNewsWire for personal reasons, and if they see a professional app from the same guys, they'll be more likely to give them the nod - all else being equal.

And at the same time, there's a great article on Rogue Amoeba about the devaluation of all software for a platform when a good piece of software is available for free. The posting says:

There's certainly a place for free software. But when a fully-featured product such as NetNewsWire is suddenly free, it effectively reduces the value of other for-pay software products. "Why should I have to pay for quality tools, when this quality tool is free?", the thinking goes. When something is given away for free, its perceived value is lowered. If software is treated as valueless, it becomes much, much harder to sell. One need only look at a quote from news coverage discussing the move to freeware to see this in action: "And thank [NewsGator] for this grand gesture...While you're at it, do pray that a few other software companies get inspired by this move and follow suit."

So very true. He continues with the browser battle and how when Microsoft started, it was far far behind Netscape, but they threw their weight (and money) behind IE and it became the best choice - and eventually the standard. Then Netscape withered and died. The competition stopped making IE better, it languished, became a petty dictator of the net, and we have what we have today. Power corrupts, and absolute power corrupts absolutely.

Yet at the same time we see that Brent is happy about this decision. Saying in his post:

But I will say that, for me personally, this is a dream come true. Every developer wants to be able to work on the software they love, make a living at it, and give it to the world for free.

Usually you get to pick two out of three — if you’re lucky. Me, I get all three.

So what we have is a situation where the goals of an individual (Brent) collide with the goals of the Mac Development community - possibly even the long-term goals of the Mac Users themselves.

I remember that back in the late 1980s, Prodigy originally test marketed their online service for free - just get the free disk, load it on and get five free accounts. Everything was paid for from the ad revenue. Interesting fact. No one wanted to use it. So they charged $12.50/month for the same thing and they had people signing up by the droves.

Why?

Perceived value. If you don't have to pay for it, can it really be that good? I mean really, if it's free, what's it worth? But if they are asking for money for it, I'll give it a look and see if it's worth that to me.

The decision about NetNewsWire is not that big a deal. Yes, it's going to change the market slightly, and yes, it probably means that RSS readers are going to be driven by NetNewsWire for as long as it's available. But the same it true for TCP/IP stacks. You used to have to pay extra for them on PCs... then they became free downloads... then they were part of the OS... then they were configured automatically out of the box.

The point is, yes, things change. Industries are born, grow, age (hopefully gracefully) and then die. It's life. No matter if it's people, animals or software. And life goes on. Always has... always will.

Comcast Under Investigation by FCC – Yeah Baby!

Wednesday, January 9th, 2008

pirate.jpg

It couldn't happen to a nicer bunch of guys. From ArsTechnica today:

A study conducted last year by the Electronic Frontier Foundation and independently verified by the Associated Press revealed that Comcast interferes with BitTorrent and Gnutella sessions by sending TCP "reset" packets to users. Despite the growing body of unambiguous evidence, Comcast still denies allegations that it specifically targets BitTorrent. Comcast vice president David Cohen told us that the company's traffic control mechanisms conform to the FCC's definition of "reasonable network management" practices (which are allowed by the FCC), but critics don't agree that Comcast's management is anything "reasonable." The FCC today indicated that "reasonable" practices should be transparent.

I don't mind a company making a buck, but when they say they're selling access to the internet only to actually allow access only to those things they want you to have access to, then I think I should get a big discount - and disclaimer. Also, I should be able to opt-out and get access to everything.

Clearly, I'm not the only one who thinks so, and I'm glad that the FCC is going to get involved. The problem is, with so much having already been done, it's not an issue of if they are doing it, it's a question of what will be the outcome of the "investigation". Again, from Ars:

The FCC's investigation will have significant implications for the network neutrality debate. Proponents of network neutrality legislation believe that the FCC's current standards and the manner in which those standards are enforced is largely inadequate to deter Internet service providers from engaging in abusive network
manipulation.

Will there be net neutrality, or will the practice of filtering be given a green light? I'm hoping that we get the former. I'm worried we'll get the latter.

Comcast’s Promise of 160Mbps Speeds

Tuesday, January 8th, 2008

Comcast announced that they will be rolling out hardware enabling up to 160 Mbps over cable. Given my recent experiences with Comcast's port blocking/interception, it's hard to believe that they'll use this for anything more than a token speed bump to get it on par with FiOS from Verizon. As much as I'd like to believe it, I just don't believe this will mean I'll be able to get even 20 Mbps symmetric or even 20/5. It's just not in their business model to allow their customers to use the connection for what they want.

But for those wanting to download stuff from iTunes or updates to applications, I'm sure this is going to be a significant upgrade. Thankfully, Chicago is a major Comcast market, but if they are trying to go up against FiOS, they won't put the new hardware here first.

I guess the best news I can read from this is the fact that new infrastructure is coming to Comcast, and if regulation follows - or they ge their act together, it'll mean better connectivity for me. That's at least something to look forward to.

MarsEdit v2.0.5 Update

Monday, January 7th, 2008

MarsEditIcon128.jpg

Looks like there's been an update on MarsEdit for a security problem. At about the same time I noticed that WordPress is at 2.3.2, but HostMonster doesn't have it available in it's application support tool. No matter, I don't use the 'drafts' section of WordPress at HostMonster - I use MarsEdit.

Lots of things seem to be updating today... Cool.

When Training has No Educational Value

Wednesday, December 12th, 2007

cubeLifeView.gif

Today was the first of eight days of "training" for a package that the shop has purchased at great expense and very little long-term thought. This training is required because they require that you are a certified developer in order to get technical support from them. It makes sense... why answer a bunch of silly questions from users when you can force questions through developers that have gone through your "classes" and at least have a working knowledge of the product. That's the theory, at least.

The practice is something else. An entire day spent on SQL - or a derivative of it close enough to be considered SQL, and where it differs, they should have just changed the syntax to make it look like real SQL. Imagine that they changed the inequality operator from '!=' to '^=' - just to be different. Why? No idea. The guy teaching the class had no idea either. But there it is.

There are a few changes - no inner selects, you have to use temp tables, but that's not hard. But we spent hours there doing queries that we'd never do in practice without the schema right at our fingertips. It was educational for about the first hour, and after that, it was just moe of the same with a lot of waiting while we flipped through slides.

I realize this might not be this guy's main job, but he's representing the vendor to us, the customer, and when his response to a statement from use like "That's a bug, it should be fixed" is "That's the way it is, it's in the docs" he's missing what we in the biz call the Big Picture. I'm sure he's a nice guy, but come on! When your customers are telling you this is a bug, then you at least say, "Hey, I understand, and I've tried, but they aren't budging". And then when we say "Hey, an error message to that effect would be nice", you agree and talk to the product developers. You don't giggle at us, like you have so many times before and then say that's the way it is.

So for the first time in over a decade of class work, I got a headache from this class. That's bad. I can't believe I have seven more days of this. It's got to get better, or I've got to go through it quicker.

XML and the Illusion of System Stability

Tuesday, December 11th, 2007

I've been using XML for quite a while. I can see where it's useful, and more often than not, I can see applications of it that are horrible overuse of XML for the sake of using XML. For example, I can see XML as a configuration file with less than 100 lines in it. I have also seen XML as the transport for data streams of thousands of points. The first is a decent use of the format, the latter is stupid, plain and simple.

So I find myself again today working on a project that I haven't touched for months. It's got a ton of XML configuration - literally dozens of files and thousands of lines - some files having several thousand lines of XML each. I've heard people who are big proponents of XML say "You can have code stability while configuring your app in XML". Well... that's a true statement, but you could replace 'XML' in that statement with just about anything else - including simple key/value text files. But what seems to be the trend is that the XML files actually configure the system - hook up this feed to that processor, and add this dialog box at this point, etc. I've seen this all the way to the point that XML changes alone were responsible for adding completely new functionality to the app.

At this point, the XML is really the code. You can't call the framework of interpreting the XML and following it's rules of wiring things together the core, immutable, part of the system - and the only part needing source control, test cases, and other "project-level" attributes of a codebase, when the way in which the application works is really dictated by the XML. It's like calling the JVM the code and the compiled byte-code the "config files". Nope, baby... that's a runtime and that's the code it executes.

So don't bother saying XML is wonderful... it's OK. It's not alone, and it's not even the best implementation of the self-describing markup language. But it has it's uses. Unfortunately, I've seen far more abuses than valid uses of XML. I'm beginning to think they simply don't exist.

The Seemingly Ever-Changing Views of Management

Wednesday, December 5th, 2007

cubeLifeView.gif

In the recent weeks one of our data vendors has contacted us about our use of their API. Specifically, they created this API for themselves, as their product runs on it, but they wanted to make it possible for users of their product to also get at this data in a programmatic manner. It was a nice thought. We looked at this and decided that it would be even nicer if the general users of this data didn't have to individually write to the API. Maybe even add a cache to the data received so that for each day, a single piece of data would only be fetched from the provider once - then after that, subsequent requests would hit the local cache. It's an excellent idea, a wonderful product, and now they are interested in charging us more than $1,000,000/year because of the data we get from this.

The reason for this is that this vendor decided to un-bundle the API from the product they sell that uses this API. They decided this because, of course, people were using it and they saw it as an additional revenue stream for their company. I can't blame them, it's capitalism as it's best - make something someone wants and then charge for it... if they pay, then you have a winner, if not, then you are out the work to make the product. So they came to us and gave us a pricing model for the data we're getting and it averages out to a little over a million dollars a year.

Given that the bundled product we got originally is about $2,700/month - this represents a large increase, and it's likely that the business will simply not see that this data is worth seven-figures a year. Again, that's their job - cost/benefit analysis... it's a necessary part of all businesses.

The problem comes in that it's not this easy - the vendor isn't just offering us an upgrade path, they are also (at the same time), holding a gun to our heads. If any of the trading business requires this data to function (as some do), then turning it off is simply not an option. Migration is the key, but migration to what? We'll have to look into the different competitors of data and look to see what each has and the cost, etc. Then work that into the systems one by one and then we'll be ready to turn off the high-priced original vendor. It's more than an afternoon of work.

The other side of the problem is that the management here has known about this issue for years. Yes, years. Each time they talk down the vendor from the ledge, and they agree to let us continue to use the data under the existing contract. When we start to get too much data from them, we find alternatives and migrate a few applications from that one source to another under controlled conditions and hitting the easiest, biggest offenders first. Makes a lot of sense. Usage of the data drops, they are happy, and life goes on.

But not now. No, they are convinced that the vendor is out to get the full price and lock down all the data. The problem with the lock-down stance is that there's no way to really do it unless we shut down all usage of the data. Imagine, I use the data in a spreadsheet. I save that spreadsheet on a network drive that others look at. That's redistribution of the data and they won't allow that. The only people that can see the data are the people they license to see the data - no exceptions. And if there's a possibility that someone else might see the data, then that has to be shut down. Their latest position is very restrictive, and to follow it to the letter will mean you really can't use the data for anything "saved" in any way, shape or form.

Clearly, we need a new source for data, but management is taking the attitude that we need to "spread out" the usage and then pay for what we really use - sticking to the letter of the license. But there won't be any data that we can use to the letter of the license as it's a server, and therefore might serve up data to something that possibly makes it available to someone not intended to see it.

It's dumb, but I'm not going to fight it. If they want to shut it down, fine. They aren't going to - not without a replacement, and when that replacement arrives we'll simply slot it into the server alongside the old, restrictive one. It's going to be a mess, but they seem to have given up on talking to the vendor on this. Maybe it's not possible, but I can't imagine a vendor that would take nothing over something - which is what they'll get if we shut this down. But then again, they could be trying to shut it down on their end, and this is their way of doing it. Vendors have been known to do dumber things.