Last week I sat down to create a proof of concept for a Visual Studio-style intellisense implementation written purely in Javascript. I’m quite pleased with the results, although it’s not very robust. Let’s cut to the chase - have a look at the pure javascript intellisense demo, or download an archive.

Now, let me explain what’s happening there before you get too underwhelmed. Basically, when you type, the script runs a tokenizer to split your previous text into chunks. When that tokenizer hits upon a delimiter, in the demo that’s the “.” character, it’ll send your previous token to the server and popup the result in the intellisense box. You can tab to the box and hit enter to select an option. Pressing tab also cycles through the options in the box.

What I’ve written is very simple. The tokenizer can be totally swapped out, so you could define your own rules for parsing your input and obtaining a token. And when the token gets to the server, you can interpret it in any way, returning anything back to be put in the intellisense box.

Like I say, this is proof of concept stuff only but I can definitely see applications for it. It’s been tested in FF3 and IE8 Beta - nothing else. I’ve got an SVN repo online and would happily accept patches or comments. Download Javascript Intellisense here.

Abandon ALT.NET

October 7th 2007, 12:06 pm in .NET, Agile Development, Projects.

For a few months the term “ALT.NET” has been gaining traction on the blogs I read, starting from a post by David Laribee in April. From there it has taken off, with an ALT.NET Conference taking place this week. So it’s perhaps timely that Sam Gentile has written a post entitled “Goodbye CodeBetter and ALT.NET” which talks about the ALT.NET movement and some of the people surrounding it.

ALT.NET is Divisive

ALT.NET is a divisive thing. No matter what they tell you.

So says Sam, and I’m in agreement. The ALT.NET conference is so cliquey that it hurts, and that’s really highlighted by an interesting bit of news that came out yesterday regarding Microsoft’s upcoming MVC framework. I think it’s interesting that they’d talk about it at a conference where most of the people will already be using this sort of technology. Just as I find it pointless that you’d go to a conference to discuss the stuff that everyone there already knows. DDD, BDD, MVC - these aren’t things that will be unknown to people attending the ALT.NET conference.

ALT.NETter A: so… heard of that new BDD business?
ALT.NETter B: Yep.
ALT.NETter A: Oh, well there’s this great new idea called DDD!
ALT.NETter B: Yeah, right into that too.
ALT.NETter A: Oh.

And so on. But wouldn’t that conversation have been a whole lot more interesting if the second developer hadn’t heard of those ideas?

The View from on High

The ALT.NET conference is barely about the underlying technologies or ideas. It mainly serves to allow all of the ALT.NET developers to come together to talk about how great it is that they are all ALT.NET. Us, and them. Back to Sam:

I am not going to use the term “Morts.”

Good, because it’s an offensive term, but it’s one that’s being thrown around by the ALT.NET gang with abandon. Scott Hanselman, a great blogger, had this to say from the conference:

Mort is crying because mommy and daddy are fighting.

That’s the kind of patronising way in which the term is being used; I mean come on, the damn thing is short for “mortal” which is a pretty clear indication of how the people who use “mort” think of themselves: Gods of their domain. Overseers of the lower developers who haven’t had the resources, or the guidance, to work with the fantastic array of non-Microsoft technologies that exist.

And in order to address that imbalance, the ALT.NET mob organise an enormous desert circle-jerk, and I call bullshit. If they really wanted to change things then they should be writing about their techniques in detail, coming up with introductory guides to DDD, TDD, mocking, creating screencasts, or giving talks at mainstream conferences, or producing tools to make the level of entry to these technologies lower than it is.

Abandon ALT.NET - Before it Goes Too Far

A lot of people in the ALT.NET camp may not feel that they’re being divisive but I can tell you that by propagating this idea you’re creating a line in the sand, with the highly-knowledgable on one side and the masses on the other. You’re not encouraging dissemination of your information, you’re just creating another impenetrable gang of developers that is almost opaque to the guy on the ground.

UPDATE: I’ve updated this post on my LosTechies blog - see Why ALT.NET?

I’ve updated Phone2Flickr to 0.2, which while still very much an unstable product is a lot more useful than the earlier 0.1 release. I’ve added a wizard-style preferences screen which guides users through the steps needed to set the program up with their device. More importantly I’ve back-ported Phone2Flickr to .NET 2.0 which opens it up to a whole load more users.

Remind me - what does Phone2Flickr do?

Leave it running in the background and Phone2Flickr will grab photos from your phone when you come into range, and then send those photos up to your Flickr account. You need a Bluetooth enabled device which supports the Obex file browsing service; most new phones will.

Downloading and Contributing

Phone2Flickr 0.2 can be downloaded here. Thanks to Sean Chambers for encouraging the development of the new release!

So after reporting my Bluetooth woes yesterday, I decided that I may as well bite the bullet and write a full application to do the job. Phone2Flickr is a .NET application which will sit in your system tray and upload your phone photos to Flickr when it comes in range. This has gone under only limited testing with two Samsung phones so I’m not sure how it will handle others, plus I’ve only used it on my PC. This is seriously an alpha release.

You have to pair your phone with your PC in the normal way, using the Control Panel Bluetooth applet, and you also need to make the PC an authorised device on your phone otherwise you’ll have to keep allowing the PC to perform actions. How you do this will vary on your phone model.

This software currently requires .NET Framework 3.5, and that your phone supports the Obex File Transfer service. The UI for this stinks. Chances are it won’t work for your device. But I wanted to get something online as it will give me impetus to improve it. I’m also releasing the source code, and will most likely accept patches.

Phone2Flickr 0.1 is something I built for my own use which I hope others will enjoy. Please don’t expect too much!

Cameras on mobile phones have reached such a ridiculous level of technology that you can get decent shots from them, decent enough that you’d actually want to keep. I was flicking through the ones I had stored on my Samsung d900 and realised there were a fair few I didn’t want to risk losing in a phone “incident”, and so I went exploring for a technical solution…

(more…)

When creating Wiretap, I wanted some kind of inline help system which would not only help users but would not detract from the layout of the form. I’ve seen lots of systems where there’s a little question mark next to the form elements, or where there is a big lump of text underneath every box. So I wanted mine to be unobtrusive and flexible. (more…)

I’ve updated my javascript TickerTape to version 1.1, and introduced a couple of new features. Firstly, one which was requested by a few people, rolling over the ticker now causes it to stop scrolling until you move out again. This prevents the item you’re interested in zipping off the screen before you can click it.

Secondly, the ticker can now be configured to scroll horizontally, which opens up a whole new slew of applications. You can see both of these features in action in the new horizontal demo. The current version of the TickerTape component can always be found here:

Latest JavaScript TickerTape Component

Incidentally, because IE7 doesn’t allow XMLHttpRequests to the local filesystem, you’ll have to upload the demos to your own webserver rather than view them on your own PC. They work locally in Firefox just fine.

TickerTape v1.01

April 24th 2007, 12:52 pm in Javascript, Projects, TickerTape.

I’ve updated my Javascript TickerTape component after Ajaxian reported that the demo wasn’t working for them in Firefox. This is v1.01 and contains no other changes. To download this update, hit the current TickerTape version link. Note that if you’ve visited the demo before you may need to flush your cache to see this fix.

UPDATE: A new version of the component is available which supports horizontal scrolling.

This component vertically scrolls a number of items within a container. Each page of items is pulled from a server which supplies JSON data. You can find a demo of the TickerTape here, and the download for the latest version here. There is a readme.txt in the download, or read on for an example usage. (more…)

Infrastructure

December 6th 2006, 11:32 pm in .NET, Agile Development, Management, Projects.

Over the past three months I’ve been working on a project all on my lonesome. Despite the fact that there’s just me developing on this, there are actually four (yes) computers involved in the process.

1. Development machine (Windows Vista)
2. Build server (Windows Server 2003)
3. Source control server (FreeBSD I think)
4. Deployment server (Windows Server 2003)

Writing this I’m thinking: “do I really need four computers?”
(more…)

Next Entries »