Logo
May 30, 2006

Valleyschwag Delivers

Filed under News & Events at 8:16 pm  

Valleyschwag has delivered! There for a couple days I was worried as the middle of the month went by without a word, but on Friday, word went out that the schwag shipped. And today, just four days later, it has arrived.

 The Package   The holy grail of schwagdom

The first glimpse     Schwag!

I'll admit, I was a bit unsure about this idea at first, but now that I've got my hands on this pile o' goodies, I'm hooked. Not only is Valleyschwag a great marketing idea, but so far has proved to be a great service. Here's a breakdown of the goodies:

For $14.99, this is a great deal, the hat alone made it worth it (the hat is definitely my favorite piece). Yeah, it's official, I'm a fan.

 

May 27, 2006

Responsibility meets Marketing

Filed under News & Events, Software at 11:10 pm  

While this is probably more about marketing than anything, Anti-Virus vendor Computer Associates is offering a free one year subscription  (press release) of it's EZ Antivirus product to beta testers of Windows Vista.

This is the type of responsibility that more vendors should accept, there are thousands of Vista boxes now running, and one can only guess how many have no form of virus protection in place. CA is not only making a great business decision, they are also helping to serve the community by reducing the number of unprotected systems connected to the internet.

It's good to see a company like CA make this kind of move, anytime a company as large as CA is able to see beyond the bottom line, everybody stands to win. 

 

MaskedTextBox Madness

Filed under Development at 10:43 am  

Over the last couple days, most of my time has been devoted to the MaskedTextBox control, and one very annoying bug. The issues revolves around the way the control deals with currency. When provided with a mask such as '$999,999,999' - you'd expect it to exercise some degree of intelligence. That expectation turned out to be quite wrong.

If you type the number '50' in a box with that mask, you'll end up with '$500,000,000' - for a financial application such as the one I'm working on, that could lead to a major issue. The only way to get the proper value is to set the cursor two places from the right. So if the user doesn't pay attention, it'll be simple to enter a value that is completely wrong.

To add insult to injury, when the control receives focus, it has a habit of setting focus to the end of the mask, where the user can not type due to the length restriction. So the user has to move the cursor to the desired location before they can start to type, and if thy just start typing, the control happily ignores them.

After testing a couple possible solutions (this and this) it soon became clear that the MaskedTextBox is too limited in features to be useful for currency. That simple.

My solution to this was to drop the Masked control and create a new control inherited from TextBox that supports a few extra features such as:

  • Numeric only input
  • Minimum Value
  • Maximum Value
  • Format String support

With less than 30 lines of code, the basic control was in place. I wish I could include a proper answer for this issue to make the MaskedTextBox useful, but after loosing two days, I can safely say it's too limited to be of real value for even slightly complex uses.

Internet Explorer 7+

Filed under Technology at 9:00 am  

 IE7+ Logo

Microsoft has announced the naming of the Windows Vista edition of IE. Internet Explorer 7+ will be the name used to refer to the Vista edition, while 7 (minus the plus) will be used to reference the non-Vista edition. While the name has been changed for Vista, this seems to mostly be about marketing (or communication) as the User-Agent for both edition will contain "MSIE 7.0;" - no plus.

Also detailed, are the features that won't make it to the XP edition of 7, they are as follows:

Happy (Belated) Birthday VB!

Filed under Software at 1:23 am  

To celebrate 15 years of Visual Basic, a quick glance to the past:

Microsoft Announces Visual Basic at Windows World '91 General-Purpose, High-Productivity Programming System for Microsoft Windows

ATLANTA — May 20, 1991 — Microsoft today announced MicrosoftR Visual BasicTM programming system at the Windows World '91 industry trade show.  Visual Basic is a graphical application development system for Microsoft WindowsTM graphical environment version 3.0 that combines visual design tools with a powerful, general-purpose programming language and Windows .EXE compiler.  It provides a simple solution to the complex task of creating real Windows-based software applications.

"We set out to create the fastest, easiest way to program for the Windows environment," said Bill Gates, Microsoft founder and CEO.  "My goal from the start was to make developing Windows applications as easy and natural as possible.  We also wanted this tool to appeal to a broad spectrum of people interested in programming for Windows — from professional corporate programmers and consultants solving business problems to independent software vendors and casual programmers."

Visual Basic programming system combines a rich, event-driven programming model with the world's most widely used programming language in a tightly integrated package.  General development for the Windows environment is faster than ever.  The Visual Basic programming system provides visual user-interface design capabilities with powerful general-purpose programming tools, making it easy for any programmer to create compiled Windows .EXE files that can be freely distributed without run-time fees or royalties of any kind.

"This is the most important software product of the year, if not the decade," said Steve Gibson, president of Gibson Research Inc.  "It's the ultimate intellectual tool. Thanks to Visual Basic, both casual and professional programmers can produce compelling and beautiful results. Now it's easy to put together real Windows version 3.0 applications."

"We needed to create an application that incorporated Microsoft Word for Windows and Microsoft Excel," said Craig Ellis, senior programmer analyst, Reuters Information Systems.  "Visual Basic was the tool to do this.  It filled our needs, allowed us to develop a fast and effective application and cut our development time by more than half.  It's a fantastic product that allowed us to incorporate a family of Microsoft products into one application."

The Visual Basic programming system can be used to develop any Windows-based application, including corporate business systems, tools and utilities, front ends to data (mainframe, server and local) or commercial Windows software products.  It is also useful for integrating multiple Windows-based applications and for automating software testing through dynamic data exchange (DDE).

Visual Basic programming system provides visual design tools for creating the user interface components — windows and dialogs — of an application.  A full set of Windows interface components (including command buttons, text fields, list boxes, pictures, drop-down menus and file system controls) are created visually, without writing any code.  The forms engine for building the interface incorporates technology acquired from Cooper Software.  A powerful, structured programming language is then used to add functionality to these interface components, responding to events that are automatically trapped by the system.

The Visual Basic language is a derivative of the Microsoft QuickBasicTM modern programming system, modified for the graphical environment and the event-driven programming language.  It uses a threaded p-code incremental compiler and source-level debugging tools, including an interactive immediate window, in a tightly integrated system.

Extensibility

Support is provided for DDE, the mechanism for exchanging data with other Windows-based applications.  The Visual Basic system also supports dynamic link libraries (DLLs), which allow the user to establish links with other Windows systems facilities and call the Windows API or routines written in other languages and compiled into DLLs.  The control set itself can be extended by developers using C and the Windows SDK and the Microsoft Visual Basic Control Development Kit, available separately.  This extensibility will provide the ability to fully integrate new user interface components into the graphical design and code development environment.  Examples could include multimedia, pen controls and data access.

Printed documentation and online Help provide step-by-step instructions for writing programs.  The online Help system provides context-sensitive reference information and sample code that can be copied and pasted into a Visual Basic program.  An icon library of approximately 400 designs and an icon editor written in Visual Basic language are also included.  "The built-in help is excellent," said Lee Perryman, deputy director of Associated Press Broadcast Services in Washington, D.C.  "The debugging features are superb, and the controls are rich and feature-packed.  Because there is almost no learning curve for users familiar with the Basic language, Visual Basic makes Windows programming a snap."

Visual Basic programming system for Windows will be available in June 1991 for a suggested retail price* of $199.  German and French versions are expected to ship in August, with other foreign language versions to follow.

The Visual Basic programming system runs in either the standard or enhanced mode of Microsoft Windows graphical environment version 3.0 or higher.  The system requirements include a personal computer using 80286 processor or higher; hard disk; mouse; CGA, EGA, VGA, 8514, HerculesR or compatible display; MS-DOSR operating system version 3.1 or later and one or more megabyte of memory.

Microsoft Corporation (NASDAQ "MSFT") develops, markets and supports a wide range of software for business and professional use, including operating systems, network products, languages and applications as well as books, CD-ROM products and hardware for the microcomputer marketplace.

#########

Microsoft, the Microsoft logo and MS-DOS are registered trademarks and Microsoft QuickBasic, Visual Basic and Windows are trademarks of Microsoft Corporation.
Hercules is a registered trademark of Hercules Computer Technology.

*Prices listed are U.S. suggested retail prices.

It was about 10 years ago that I decided to apply myself to learning Visual Basic, what a interesting journey it's been.

 

May 26, 2006

The Schwag Has Shipped

Filed under News & Events at 8:18 pm  

Valleyschwag, May 2006

Valleyschwag has shipped the second issue of their bundle o' schwag to approximately 1,500 subscribers, up from 50 for the first issue. The growth is amazing, and so is the money involved. This month they should have seen somewhere around $21,500 in gross revenue. 

For a part-time project where you are just mailing out free stuff, $22,000 a month is not bad at all. There are of course a number of expenses, but this is what's important: this is an innovative business model that really works. How well it would go in other industries, I don't know, but after seeing the popularity of the Kings o' Schwag, I'm sure we'll see similar attempts in other industries.

May 17, 2006

Web Developer Toolbar & Menu for Opera

Filed under Software at 9:00 am  

I've been using the 'Web Developer Toolbar & Menu for Opera' for about the last month and after being reminded today about how useful it is, I thought I should probably mention it for those that haven't heard about it.

This is an extremely useful set of toolbar modification to Opera to have a few very nice touches to it. For most of these tasks, there is a Firefox extension available, Web Developer, which does the job quite nicely. Though switching back & forth just to check something small can be quite a pain (as Opera is my primary browser), so thanks to this little gem, it save me that much more time.

As they say, time is money, so every bit saved is a good thing.

May 15, 2006

Extreme Simplicity

Filed under Development at 9:00 am  

"Perfection is achieved, not when there is nothing left to add, but when there is nothing left to remove."
Antoine de Saint-Exupery

Such a simple statement; yet one of such power. This statement carries a new impact as the concept of "Extreme Simplicity" gains ground. The idea is that instead of focusing on adding more features (Microsoft), do a few things, and do them very well (Apple).

This is a great concept, focus on the user, focus on what the user spends most of their time doing and keep all the rest out of the way. I'll be the first to admit, I'm addicted to gold plating. If I think it's cool, I'll add it, which is most certainly at conflict with this concept. This is one area were the two goals leave me quite torn, giving the user every feature possible versus a simple - even minimalistic interface.

All things considered though, this is where things are going. Simple, intuitive designs sell; it's that simple. People expect technology of any form to fit in their lives, as simply as if it wasn't even there. By building around the core of what the user does and minimizing fluff to enhance the user experience, you're giving the end users what they want.

As written by Andreas Pfeiffer, here are the 10 fundamental rules of Extreme Simplicity: 

  1. More features isn't better, it's worse.
  2. You can't make things easier by adding to them.
  3. Confusion is the ultimate deal-breaker.
  4. Style matters.
  5. Only features that provide a good user experience will be used.
  6. Any feature that requires learning will only be adopted by a small fraction of users.
  7. Unused features are not only useless, they can slow you down and diminish ease of use.
  8. Users do not want to think about technology: what really counts is what it does for them.
  9. Forget about the killer feature. Welcome to the age of the killer user-experience.
  10. Less is difficult, that's why less is more.

We all know that users don't want to think; this design philosophy further refines the concept and simplifies it to the point that it can be applied to almost any form of technology. By designing with a goal of maximizing simplicity, you create software that fits in the users' life, instead of fitting them into your product.

If you want your product to sell, find a way (though difficult it may be) for your product to be both indispensable and unobtrusive.

 

May 14, 2006

A Secure Mentality

Filed under Development at 12:01 pm  

My employer recently completed the final audit to confirm ISO 17799 compliance, the process was a real eye opener. In a process that should have been fairly short & painless, the ordeal lasted close to a year, with me joining the company just before the second, and largest audit. That made my first few weeks rather interesting, to say the least.

While 17799 does have some complex requirements, most of the issues found had more to do with the overall mentality than with the true technical issues involved. The mentality at work tends to be to not seek what's secure, but to find what works, and what's fast - regardless of its impact. Without always being aware of the security issues involved, it's easy to introduce significant vulnerabilities into a system.

There are three primary groups of thought when it comes to security:

  1. Those that don't know or care.
    In the business world, these are by far the most common users, they don't understand the implications and they typically want to keep it that way. These users introduce an amazing number of issues into a system.
  2. Those that know, but don't care enough to do things right.
    These are less common, though they pose an equal, if not greater risk. When the pressure to have tasks done in a extremely short time is high enough, security shortcuts are often the result. While it typically doesn't add significantly to time-lines, there is a time cost to ensuring that proper processes are followed.
  3. Those that put security first.
    This is the smallest group, though when equipped with the proper authority, can have the greatest impact. These rare people that both understand and care tend to carry the burden for the ignorance and laziness of the other major groups. It is there duty to see that data is secure, and systems are well protected against possible attacks.

Keeping a constant eye on security is critical, especially for developers - as our work can have an impact on such a large number of end users. Many developers tend to under-appreciate the impact they can have, both for the good their work does, and the harm their mistakes can cause. Finding a clear understanding of the implications of a decision is vitally important.

Even if you think something may not raise a security issue, take the time to evaluate the possibilities. Its well worth the time, trust me, I know this. A single error on my part as to how the application needed to secure its data led to a public announcement of the issue to the famous BugTraq mailing list. A simple mistake, with a definite impact on how I view potential security issues.

Thankfully that issue was small enough that it didn't cause any real harm, but it certainly taught me a lesson. In that decision, I didn't consider the possible implications, it led to what I consider a rather public embarrassment.

Next time you work on a feature that could be abused in any way, take a few minutes to think about ways to make it safer and more secure. You'll thank yourself later. 

May 10, 2006

Valleyschwag

Filed under Technology at 9:03 pm  

A few days ago, one of my favorite blogs mentioned this interesting service, Valleyschwag. For $15 a month, will bundle up a package of the best schwag being handed out in silicon valley, and deliver it right to your doorstep. This really is a great idea, for a few reasons.

A new twist on Viral Marketing 

I really like this concept, from both sides of the coin. For companies, they can supply these promotional items at minimal cost to a larger, more targeted audience. While for the end user, they pay a fairly minimal service fee to receive cool stuff. What could be better, free stuff & nearly free advertisement.

This allows for some really creative marketing, getting the brand out without wasting money on sending products to those that have no real interest is critical. With so much money wasted on typical give-aways, for many companies with a lower budget, such promotions aren't an option. A service such as this is great for these smaller shops, it allows doors to be opened that otherwise would have gone untouched.

Let The Bribing Begin

Let's face it, free stuff is great, and people love it. The $15 being charged is close enough to free for what you're getting, at least one shirt, plus enough stickers to cover that ugly laptop.  In general, people are easily bribed, and when good companies with good products do the bribing, it works out great for all involved.

The Future of Marketing 

These companies realize something important, traditional forms of advertising aren't that effective, and among the web crowd, even less so. To get your name out, you need to not only have a good product, but give users a reason to talk about your product. Word of mouth is the way to go, and with lower-budget Web 2.0-types seeking ways to build buzz, this provides an excellent opportunity.

The companies that donate these items receive not only more, but better press than they could buy. If this works well, expect to see copy-cats springing up in other industries. This is certainly an interesting idea and I can't wait to see where it goes.

I'll be keeping an eye on this, I'll post again once I receive my first package. ;) 

 

Next Page »
delegate-insomnia