Skip to main content

Posts

Visual Studio freaked out

The Visual Studio .NET IDE just completely freaked out and went all Japanese on me. If you ever want to be scared witless, don't close the IDE for weeks on end and this too will happen to you. I've had Intellisense freak out before (giving me the hint I need to save my work shortly before the IDE decides to crash), but the IDE itself never freaked out before to change the actual text in the document to Japanese/Chinese characters. Source code really doesn't look very good in anything other than English 7-bit ASCII. I mean, UTF-16 might be okay from a visual perspective, but I doubt most compilers would enjoy dealing with that. How does this relate to developing software? Well, don't do this. Users get confused easily. This sort of thing would only complicate their lives more and probably frustrate them to no end. Especially if they don't understand Japanese/Chinese/corrupt lines of text.

Everyone loves Garfield...

Completely and totally unrelated to software development, I found this: http://www.garfield.com/fungames/comiccreator.html And made this: Okay, so it isn't exactly funny, but given that the tools given to people to use are quite terrible, I'd say it ranks somewhere from sort of funny to downright hilarious - depending on your personal luck with "the ladies." As to how this relates to software development: Give people enough tools to get the job done, but not too many or users will get lost quickly (or use them for means they weren't meant to be used for). Given this tool is available free for everyone to use, you wouldn't want to grant too much power or people will start their own rogue Garfield strips. However, there are too few options to do anything remotely hilarious. It took me a long time to figure out the best way to pummel Jon was to use a pillow. That's frustrating. I could have used the other props. but the characters and objects are limited to t...

MSDN Library vs. "Grandma"

Dear Microsoft, Can you PLEASE stop using pictures of people on the MSDN Library CDs/DVDs? No offense, but this latest release has me realizing that I don't want to be looking at someone else's "grandma" for three months (the last one with that guy with the nasty goatee grossed me out for three months and this one is already making my stomach churn and my face turn green). While I'm at it, I don't want to be looking at anyone - about:blank suits me just fine. I'm sorely tempted to rollback several releases until I find a better-looking picture. But I know Microsoft wants to always look and sound impressive, so pictures of tech. stuff works fine by me. Come on, seriously, you've got plenty of geek toys lying around - Pocket PCs, Tablet PCs, that new mouse with the horizontal scroll - we're geeks and are more than willing to drool over cool stuff. Just no more people for a while... If you _absolutely_ have to use people, then stop making them l...

Spyware strikes again...

I'm getting really fed up with the idiots out there who think they can install spyware junk on my PC even _with_ my permission. There should be a way to set some obscure setting in IE that says, "I'm a computer geek, I'm not stupid, go away. Go bother someone else who is vulnerable to such nonsense." Take, for instance: http://www.lyricspy.com/ Running that site in FireFox makes it show up just fine. Now load it in IE (er, assuming you have all the latest security patches installed) and you get a face full of some annoying Flash animation telling you to install their ActiveX (spyware/virus/trojan) control (um...no way) and a dialog box telling you to install the ActiveX control (still no way) and a whole lot of junk (the text on the webpage is busted - still no way I'm installing it). This isn't the first time I've run into this and I'm just picking that page out as an example. In FireFox, just about at the same location in the source (if you c...

Really great monitor idea.

This is boiled down from a discussion on a list I own and moderate with over 5,000 software developers (I initiated the discussion): Let's say you are editing code. What is the number one complaint I hear people talking about from IDEs and editors? Not enough text on the screen. Well, since everything these days operates on fonts, the natural thing to do is to first play with the fixed-width font size being used (variable-width fonts don't work for programmers). So, now you have, if you are lucky, a font that can display maybe 140'ish characters across. The ideal width is roughly 200 characters. However, what about the vertical? Depending on the editor/IDE, most likely anywhere from 30-50 lines. The ideal height is 200 lines. Okay, now what? Well, since screens operate on pixels, the next natural thing to do is to increase the number of pixels. Okay, so you've got 1600x1200 screen resolution. Big deal. The font is so tiny you can't see it. So, you crank u...

Logitech sales = clueless.

My Microsoft Intellimouse Explorer 3.0 USB mouse died today. Well, it was working on dying for the past three days. At first I thought a hacker had busted into my system, but it turns out that the manufacturing of this mouse is so poor that the cord simply becomes disconnected over time...inside the mouse. This particular mouse is self-contained and sealed - meaning no dust, dirt, grime, etc. can ever get on the optical lense - the downside is that repairs to the mouse (e.g. fixing the cord) are impossible. I could buy a new one, but from the reviews on Amazon and what-not are not too good - it seems Microsoft has started making shoddy hardware that dies in months or even days of purchase. So, where did I head for a mouse. You got it - Logitech. I went to their website and started looking at mice. They have a lot of mice. So, I said to myself, "Surely they know their competitor products and can sell me a mouse". So, I hit the link at the bottom that said, "Contac...

My love hate relationship...

Today I hate Microsoft. Some days I'm indifferent. Some days I love the company. Today I hate Microsoft. It has absolutely nothing to do with any Slashdot or Register or other news article. Both of those sites loathe and are hostile toward any company and/or person that makes more than 1 million USD per year. Nope. None of that. It has everything to do with DestroyWindow(). I hate Microsoft's DestroyWindow() function. MSDN Library has this one little innocent comment that caused me to waste an inordinate (and highly frustrating) amount of time today: "A thread cannot use DestroyWindow to destroy a window created by a different thread." WHAT THE...!?! I have words for that that are inappropriate for this blog. I need a good chunk of lye for cleaning of the mouth. Let's think about this. I understand perfectly that people wouldn't want other processes calling DestroyWindow. That's uncouth. However, within the same process, Windows should never ...

Completely Random Thought of the Day...

Someone was having a conversation with me recently and brought up temperatures at which stuff is frozen. Of course, the conversation went downhill from there. However, I did get to thinking about zero kelvin...the point at which all molecules completely freeze. Unfortunately, my idea is impossible because no one has ever attained zero kelvin yet (we've come close, but not close enough for this idea to work). Here's the rhetorical idea of the day: Take a person or animal or other living thing. What would happen if every molecule of that entity were instantly frozen to zero kelvin, left alone for two years, and then every molecule instantly restored to the temperature it was at before being frozen? In order for such an experiment to work, we would need zero kelvin cold storage AND the ability to immediately alter molecules on an immediate basis AND a couple volunteers. This, of course, would have huge implications if it worked - this freezing/restoring process could perfect...

The definitive guide to dinner.

There have been so many debates as to what dinner is and when it is and all that, I finally got fed up tonight and decided to settle the matter once-and-for-all. What follows is the Hitchhiker's Guide to Dinner...or something like that anyway. First off, if you have 42 of anything in your food, whether it be molecules or atoms or subatomic particles, you can sell it on eBay for a few million dollars. The basic definition of dinner is the "chief meal of the day" according to all sorts of dictionaries out there. Therefore, this means that whenever a person feels fullest, they have had dinner. So, if, at the time most people have breakfast, a person feels fullest after, they have had dinner. Universally accepted are the definitions of breakfast, lunch, and dinner. However, if dinner is had at the time of breakfast, this probably means the person stayed up until 5 and missed breakfast and lunch. That's 5 a.m., not 5 p.m. - just in case anyone needed clarification on ...

A Funny Thought...

I just had a really funny thought. I was watching the evening news this evening and just happened to hear Dan Rather or some other equally ancient dude talking about how younger people seem to not care about private savings accounts and all the hoopla surrounding Social Security. My inital thought was, "Well, they don't care because they are watching Cartoon Network instead of the evening news." http://www.cartoonnetwork.com/ At least I thought it was pretty funny. In reality, the reason we don't care is because I can name three things that are on the evening news occupying over half the timeslot: 1) Someone died in Iraq by carbomb/whatever or announcing airport security stinks. 2) Someone discovers that bananas cause cancer or another FDA approved blah blah blah gets mad cow disease or some other such nonsense. 3) Someone is pushing budget balancing, social security reform, this reform, that reform. (Other, more minor, negative news follows - very rarely any p...

Uh oh...

Oh boy - two posts in one day. That's a rare treat for all of you, but I absolutely have to share this: http://www.schneier.com/blog/archives/2005/02/sha1_broken.html Don't bother reading the above unless you are in the security industry. There is only one thing you need to know: e-commerce = seriously busted. See, I am into the whole security industry thing and you don't need to be. However, when something this huge happens, you need to know about it - and perhaps the underlying technology of how it works. And this is huge. Okay, we all remember...we probably don't remember but think we do...back when e-commerce was this huge buzzword and everyone was talking about how it was the hot next best thing? That was somewhere around 1998 and escalated into 2001. It is now 2005. In computer to human years, that is 80 total years for e-commerce. E-commerce is based on a technology called Secure Socket Layer (SSL). SSL is called a layer because it transports data secur...

Ran across this...

I had no idea people could get SQL Server - you know, that huge hosebeast of a database server - for free: http://www.microsoft.com/sql/msde/default.asp Granted it only supports 25 concurrent users, but seriously, how many people is 25 concurrent users? The way I figure it, if a single user is considered as connecting and disconnecting within 100ms after executing their query, that's a total of roughly 250 users per second or roughly 15,000 users per minute without collisions. Of course, that assumes perfect timing connecting and disconnecting at that rate, so I'll assume there is some delay and say roughly 7,000 users per minute to be safe. Of course, if people are hanging onto their SQL connections longer than 100ms, then the number drops dramatically. Basically, if you are using Access or Jet or whatever, you can use this as a drop-in replacement. Sort of an intermediate step to a full-blown SQL Server environment. At the very least, it will be faster executing queries a...

Bit manipulation...

Completely unrelated to what I want to talk about (but got me thinking about CubicSpot): http://99zeros.blogspot.com/ Mark Jen got fired from Google after leaving Microsoft and putting information about Google on his blog, which is above. It was easy enough to find - thanks to Google it was the "I Feel Lucky" link from my keyword search "Mark Jen". CubicleSoft ( http://www.cubiclesoft.com/ ) has been tasked with the task (there's an interesting paradox - tasking people with a task is a task that has to have been tasked) to move roughly 1.5 million lines of C code to C++. The process isn't incredibly involved because a majority of the code has already been written in a modular format and has been well debugged. It is just the stuff that isn't modularly written (or the stuff that needs to be _re-written_) that is the major time killer, what with all brand-new test cases and what-not. As such, I haven't been loyally blogging to my heart's conten...

More on the mini

Everyone's chatting about the latest development at Apple, so this is likely to get lost in the mix. I've been in contact with Bill Fox at www.macsonly.com . Great website, by the way for understanding what is happening in Mac land. Anyway, here is what I've been looking for in terms of hardware details that PC users are wanting to know. Bill's reply to my major issue with the Mac mini revealed some important information about the internal guts: "The hard drives in the mini's are not Mac drives they are typical 2.5" ATA notebook drives found in PCs and Macs. Their RPM is 4200. You can get a 100GB 5400RPM notebook drive or a 60GB 7200RPM drive and those are the largest and fastest available. If one needs a huge drive, one can use an external FireWire or USB 2.0 3.5" drive." Apparently the Mac mini hard drive is not only small, but ALSO kind of sluggish. Most PC notebooks seem to have 5400RPM drives in them, but the mini is only 420...

This is going to take a long time...

I am in the process of moving roughly 1.5 million lines of C code to C++ for several very specific reasons I can't mention here - not yet anyway. I'm off e-mail, web surfing, IM, blogging, and general reality for the next 3-4 weeks. I expect that by the time I get back, I will have my fourth case of Carpal Tunnel Syndrome (CTS) in the past three years. Wish me luck and, uh, I hope it doesn't take much longer than that. I have already had enough setbacks, but this one could knock me out for a while.

Time for an update

What's hot? What's not? Below is my list of recommended companies to do business with and those whom you should avoid like the plague. As a developer, you need computer equipment and software that simply works. I am always looking out for newer and more interesting technologies to add to my core recommended list. If you are a hardcore gamer, these recommendations are not for you. If you are searching for a good PC that won't break down, these can be for you but may be slightly out of your budget. Recommended PC and/or hardware manufacturers: Dell. I have yet to have a problem with Dell. Good solid hardware, but not the best for gaming. Spending less than $500 on a PC will get you in trouble, though (you get what you pay for). IBM. Good hardware. Unfortunately, they shut down their PC division, so parts will be hard to find. Expensive. Micron. Their memory chips are still top notch for those who need an upgrade to existing hardware. ATI. NV...

Wow...in the "I have just been positively wowed" sense.

Usually when I say, "wow," I refer to the negative sense of the word. This is most definitely a positive "wow." Apple has recently slashed prices on their hardware. About a year ago I got a new PC, but at the same time I was seriously considering a Mac. All developers, look at this: http://www.apple.com/macmini/ The Mac mini is visually impressive, but that isn't what counts. I have been saying for a long time that people won't move to Linux because it is unusable. Macintosh/Apple/whatever their name is today (such is the sad result of mergers - you can't figure out a company's name any more), has their sticky fingers all over making a usable OS. I would recommend Mac over Linux any day. I could care less about proprietary hardware - in fact, as a developer, it probably makes my life easier. For developers, I have been eyeing the Mac for a really long time. It has one thing that every developer needs: Three OSes rolled into one ...

I have returned...

Eons ago, in a day before my time, Douglas Macarthur once said that he would return. When he returned and set foot on one of the islands in the Philippines, he said that famous phrase, "I have returned." (Unfortunately for him, Ahnold Schwarzenegger's line "I'll be back" seems to have superceded "I shall return" in more recent times - I would wager that the difference makes for a good history test question). In roughly the same way that Macarthur returned, Microsoft today dropped a bombshell on the anti-virus companies. In my automatic updates in-box resides something called the "Malicious Software Removal Tool," which will get installed before the next reboot in roughly 23 days from now. Microsoft is wisely being very careful as they cautiously step on anti-virus vendor's toes not even daring to call it an anti-virus tool. Most people will not remember back to the Windows 3.x days as Microsoft was busy trying to define wh...

An interesting article on blogs

http://www.developershed.com/plugin/PIM_200501.pdf See the last page of that PDF. The author discusses an important topic about bloggers. Basically, bloggers can control the results that come back from search engines. For those who have no idea what I am talking about, I am referring to SEO. No, this isn't someone who has decided to shorten their long name to three letters, but rather stands for Search Engine Optimization. Most programmers are aware of things like Googlebombs and sites like that and generally think there isn't much to search engine optimization. Technically, there isn't. You want people to link to your site and they want you to link to theirs. A never ending battle of trying to get high quality and high quantity links to a website - and get spidered properly. The trick comes in knowing how each search engine algorithm works and what to do if it changes. Some people try underhanded methods to raise rankings. A Googlebomb, for instance, wil...

Standard additions...

Okay, while I am not on the C/C++ committees, it has come to my attention over the more recent months and years that the core languages are simply not capable of handling modern devices - particularly dealing with PCs. If you search the archives of several of the many lists I subscribe to, you will frequently find programmers asking about how to use ANSI C/C++ to do: 1) Single keypress keyboard input. 2) Drawing graphics on the screen. 3) Printing to a printer. 4) Accessing USB devices (e.g. a scanner). 5) Responding to mouse movement. (etc.) Every single time, without fail, someone replies saying that these are not standard. I have, on occassion, jokingly made the suggestion that C was designed to output to a dot matrix or line printer. So, all of these discussions have me thinking about what to do. The result of all this thinking is that, because C is incapable of these things, people have to resort to using OS-level APIs. One of the major goals of C/C++ was to make it abl...