Posted on Leave a comment

Technologies to come

Someone titled this "Microsoft’s Vision for 2019" I don’t know if that is true or not. What I do know is that much of what is presented in this video is already in the works. I’ve seen some of it demo’d. I know we have the technology to be deploying some of it today but necessary infrastructure improvements and profit margins stand in the way. For instance, if Nokia has a plan to release version A B C D and E of a phone there is a good chance that while were are using version A that B C D and E are in the works if not already developed. If B and E were developed at the same time Nokia could sell E but would miss out on all the profits by release B then waiting awhile to release C and awhile longer to release D and so forth. It doesn’t make fiscal sense to jump ahead. If money were not the issue and the technology improvements were solely about the advancement of society, you can bet we’d jump from A to E.

2019 is too far away. We need these technologies today! Freeze me and wake me in 100 years.

Update: Take a look at how AT&T envisioned the future back in 1993. Pretty amazingly on the nose!

Posted on Leave a comment

Start the year off with professional development

Is training and professional development something you are going to get around to one day? Why not make it today? Resources abound for honing our career skills. iTunes has free podcasts from iTunes University. A quick Internet search should produce abundant articles and videos useful to whatever your line of work.

I am taking the next 30 minutes for professional development. In my case, I am going to begin learning Eclipse so that I can move away from Notepad++ and CFStudio5. This will be a step toward moving my development environment to a portable hard drive so that I can work on any machine anywhere I go. I know learning to use an editor sounds silly. In my case, shouldn’t "professional development" be about learning about new software testing techniques, algorithms, or another programming language? Not necessarily. Anything that you learn which makes you more efficient in your career or makes you more valuable to your company is professional development. Even if you already know and use Eclipse, watching these videos make teach you something you don’t realize you are overlooking. Retraining on a tool you already use and know can help break bad habits or reveal better ways to use the tool.

Update: See Darren Schall’s discovery on Eclipse workspaces as an example of using a tool for awhile and then discovering its hidden power.

Posted on 7 Comments

A negative of installing a new motherboard

I am pleased to have my workstation working again. I miss the portability of working on Tommy’s laptop but nothing compares to having multiple monitors for productivity. When will they make a laptop with a screen that can fold out so that the laptop itself will have 2 or 3 screens? Imagine. Fold up to reveal the keyboard and one screen. Need more real estate? Fold the screen to the left and you now have 2 screens and a keyboard. Need more? A 3rd section folds out to the right and now you have a keyboard and 3 screens and portability! Oh how I dream.

Anyhow, seems my machine is still not up to par. Windows just informed me that I have to install service pack 3, again. (since installing the new motherboard required reinstalling Windows core files)

Posted on Leave a comment

Having fun with Jott

Jott is one of my favorite web services. I use speed dial on my phone to call Jott, I speak the name of the person I want to send a note to (usually ‘myself’), I record my message spelling out difficult words "My name is McCaughan M-c-c-a-u-g-h-a-n", then I speak the date and time for when I want a text transcription of my words sent to my email and phone as sms. Jott’s magic is not in its speech to text software but in its human backup. Computers do the bulk of the work but humans (India I think) listen to difficult messages and provide a fairly accurate transcription although sometimes there are errors. My first reminder today:

Get a plunger.

Okay. I am pretty sure I never said to get a plunger. I can go to the Jott website and listen to my original message to figure out what I really meant. I also like to have fun with the messages sometimes:

Get a plant light, save the plants. Save the plants, save the world.

You can also use Jott to post to Twitter, Remember the Milk, and 40 some odd other services.

Posted on 6 Comments

Today’s Technical Challenge

About every 5th character I type, regardless of application (be it Twhirl, Firefox, MS Word, CFStudio..) the window I’m in loses focus. This means I have to click back into the window that I’m trying to type. Terribly annoying but I can deal with it because I have to be on my code today instead of on troubleshooting. I’ll run some antispyware checkers in the background while I work. This is terribly frustrating.

Update: This computer has an ethernet card and a wireless networking card. I’m using the ethernet so the wireless is unnecessary but the wireless connection manager kept polling for available networks and that was stealing the focus from the other applications. Disabling the wireless networking connection did the trick.

Posted on 10 Comments

Twitter API Severely Flawed

Twitter’s API (basically a way to let software developer’s work with Twitter’s data) has been a huge factor in Twitter’s success. When Twitter did not provide adequate search, a developer used the API to create http://summize.com/ which was so good that Twitter purchased it and incorporated the code as http://search.twitter.com/. Twitter does not provide stats but numerous developers have created applications such as Twitter Charts and Twitter Stats to provide statistics. (See also: Now You Can Graph Your Twitter Usage) The API has allowed people to get away from the phone and web interfaces by developing desktop applications such as Twhirl and TweetDeck (which includes features not built into Twitter such as grouping of friends). Twitter by default emails you when someone starts following but never tells you when someone quits following so software developers used the API to write Qwitter and Twitterless.

Where’s the flaw? The flaw is in the authentication. Many of these services or applications developed by a third party require you enter your username and password. There is nothing to say that this third party should be trusted and we give them the keys to the kingdom. With that username and password that developer could maliciously use your account for spam, sign you up for other services, or flat out lock you out of your own Twitter account. If one of these services started sending too many Tweets and causing your followers to quit following (see #7) you, the solution is to change your password. But, changing your password also breaks all the other Twitter services you have signed up to use.

What’s the solution? The solution is simple. For each service or application that requires a username and password to access my Twitter data, I should be able to generate a key instead of giving them my password similarly to the way Amazon Web Services works. This would give me the power to list all the services I use from my Twitter profile and to individually and at my own discretion disable each service. From a developer’s standpoint, the process is easy because a key is simply a GUID. The only challenging part to Twitter developers is changing the authentication process and developing the profile screen to manage the keys.

Until Twitter implements a key scheme, I am no longer giving my password out to third party Twitter applications and services (unless they are really cool and look really trustable!). I made an exception today for TwitterFone so I could compare it to Jott.

See also:
Twitter Guide: How To Do Things With Twitter

Update Dec 15, 2008: See also Is Twitterank Ranking Your Popularity Or Stealing Your Password? Others see the same flaw I do.

Update: OAuth looks like a very viable solution.

Update Dec 29, 2008: Alex Payne, The Twitter API Lead developer, confirms that Twitter is testing OAuth! Yes! OAuth is coming.

Update Jan 2, 2009: See also Allen Stern’s Sheep Line Up in Perfect Twitter Formation and Louis Gray’s Twitterank Can Have My Password, No Questions Asked.

Update Jan 3, 2009: I’ve now officially been phished through Twitter. I didn’t bite. I’m betting someone used a 3rd party website that looked legitimate while collecting usernames and passwords (maybe it promised to send @ replies through email or give Twitter stats or something) and then using the Twitter API ran a muck sending direct messages from "trusted" people hoping to get people to click through to the bad website. The one I received:

softclothing Hey, i found a website with your pic on it… LOL check it out here http://twitterblog.access-logins.com/login

Posted on Leave a comment

Pownce RIP – application lives 1 year

Pownce RIP Jun 27 2007-Dec 15 2008 (open to pub Jan 22 2008) N’vr used it much but liked its format and function see: Goodbye Pownce, Hello Six Apart

With only one year of useful life in the application, it was purchased by SixApart for "an undisclosed amount" which to me sounds like it made money for Rose and others.

Posted on 1 Comment

Vista Fails to Connect to Samba

I was (still am) a huge fan of the e-smith gateway server (now SME Server see also http://contribs.org) which was a very simplistic way to take almost any computer and have it up and running as a email, web, database server and more in under 2 hours. It has reliably been my development server of choice for years although my next nix server is likely to be Ubuntu.

I am having a problem getting Vista to authenticate across the network to allow me to browse directories and work on my development files. As it turns out, the default Vista security is set to use only NTLMv2 authentication. Samba can’t handle this. One solution is:

To solve the problem run secpol.msc to get into the Local Security Policy screen. Goto "Security Options" then find "Network Security: LAN Manager authentcation level." Change it from "NTVLM2 responses only" to "LM and NTLM – use NTLMv2 session security if negociated”.

Now, to exasperate the problem, Vista Home Premium does not have secpol.msc. Instead you must manually edit the registry. Use caution when editing the registry! Run regedit. Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa. Look for the key LmCompatibilityLevel, right click, choose modify, and change the number to the appropriate value of 0 to 5.

0 – Clients use LM and NTLM authentication, but they never use NTLMv2 session security. Domain controllers accept LM, NTLM, and NTLMv2 authentication.

1 – Clients use LM and NTLM authentication, and they use NTLMv2 session security if the server supports it. Domain controllers accept LM, NTLM, and NTLMv2 authentication.

2 – Clients use only NTLM authentication, and they use NTLMv2 session security if the server supports it. Domain controller accepts LM, NTLM, and NTLMv2 authentication.

3 – Clients use only NTLMv2 authentication, and they use NTLMv2 session security if the server supports it. Domain controllers accept LM, NTLM, and NTLMv2 authentication.

4 – Clients use only NTLMv2 authentication, and they use NTLMv2 session security if the server supports it. Domain controller refuses LM authentication responses, but it accepts NTLM and NTLMv2.

5 – Clients use only NTLMv2 authentication, and they use NTLMv2 session security if the server supports it. Domain controller refuses LM and NTLM authentication responses, but it accepts NTLMv2.

[Source, Microsoft TechNet, LmCompatibilityLevel]

In this case, to support Samba, I want the value to change from the default of 3 to 1.

After doing this, reboot for the change to take affect. Next, read Security Watch The Most Misunderstood Windows Security Setting of All Time.

See also.

Posted on 11 Comments

Firefox Crash Recovery Fails

My workstation is having trouble. I suspect a piece of hardware is dying or a huge dust bunny is wrecking havoc inside the case. It spontaneously reboots a few times a day which is not really a problem because I wouldn’t take breaks otherwise and Firefox always comes back in the same state as before the crash…well, almost always. I don’t help myself because of the way I use the computer. I have many apps open at once and typically will have multiple Firefox windows open with 10 to 20 tabs open in each one. This is how I do research and it is typically work related or blog related. In today’s instance I had 4 windows open. 3 were work related and 1 was filled with information I might one day blog about. These are usually just bookmarked at Delicious for that day I finally get a round to it. Considering my machine was having trouble and I had far too many tabs open, I was just starting to bookmark everything and reduce my windows down to the very few I needed when the computer crashed hard. Upon coming back up, Firefox opened to just a single blank window…no tabs. I needed that work related research! I can reproduce it but this is just frustrating!

So, is there a way to tell Firefox, "restore the previous, previous state?" I think I’m faced with scrolling through the mornings history and pulling up pages one at a time.

Posted on Leave a comment

Has FireFox forgotten you?

Many sites have the option to log in and remember you for a time period, usually a couple of weeks. For instance, Delicious, GMail, and Twitter all remember that I’ve logged in and only make me log back in after a couple of weeks even if Firefox is shutdown, crashed, or the computer is rebooted. That is, until last week when I noticed that every time I went to one of the sites I had to log in again even if I’d checked the "remember me" box. Naturally, I assumed a cookie problem.

As it turns out, if this is happening to you, a file called cookies.sqlite is damaged. Close Firefox! Right click on the START menu and open Explore. You may be navigating to some hidden directories so once Windows Explorer opens, go to the Tools menu and choose Folder Options. Go to the View tab. Make sure the bullet is on "Show hidden files and folders" instead of "Do not show hidden files and folders" Personally, I would recommend removing the check from "Hide extensions for known file types" Now navigate to this directory: C:\Documents and Settings\{username}\Application Data\Mozilla\Firefox\Profiles\ Note that C will be the letter of your drive where windows is installed and it may not necessarily be C. {username} will be the name you use when logging into windows. Once in that directory, find your profile directory. It will probably be the only subdirectory and most likely will be a bunch of random numbers and letters dot default like 2fwe34ccc.default. Go into that directory. Find the file cookies.sqlite and delete it. Restart Firefox and your problem should be solved.

Posted on 2 Comments

There’s power in that command line

There is something wonderfully satisfying about using PUTTY to secure shell into a server and manipulate the server and websites at the command line. When I’m about to make major changes, this is one way I backup the site which of course is far faster than ftping a copy of the site to another machine.

PuTTY is a terminal emulator application which can act as a client for the SSH, Telnet, rlogin, and raw TCP computing protocols. The name “PuTTY” has no definitive meaning[1], though ‘tty’ is the name for a terminal in the Unix tradition, usually held to be short for teletype. [Source, Wikipedia, PuTTY]

Posted on Leave a comment

Undo global search and replace screwup

I made a mess. Does anyone remember how to back out of (undo) a global search and replace in CFStudio5? Should be the same process for Homesite+.

Update: Seems like I remember undoing a global search and replace in the past. Fortunately my replace string was absolutely unique and I was easily able to fix this with another global search and replace. The lesson is "don’t start a global search and replace and walk away from the computer for 15 minutes. If you did the find part wrong, you could be faced with many of changes!"

Posted on 4 Comments

I like my operating system slightly aged

I have a development server in the house that still runs Windows 2000 Server and has Internet Explorer 6.0.2800 on it. The machine is finally starting to show its age and could not hold up to testing my current project, a web application whose end users will primarily use Internet Explorer 6.0.2900. My server just wasn’t cutting it tonight so I bit the bullet and pulled a laptop which had Ubuntu installed. I pulled out my free copy of Windows XP I got from Microsoft for participating in the Windows XP beta program. After installing it, the network card wouldn’t work so updates were impossible. Fortunately, I used to be a Microsoft Partner and participated in the Microsoft Action Pack program so I had a disc that had XP Service Pack 2 on it. After installing that things were looking better but the NIC still wasn’t working. I dug out a USB drive and used another computer to get the network adapter driver from Dell’s website and suddenly the machine was working. After installing the updated video drivers the laptop with 256MB of ram is running almost better than my workstation I used for development! Best of all, it now has Internet Explorer 6.0.2900 and I can see the website exactly as my clients see it!