Shorten iterations for increased productivity

I’ve been a software developer for over 10 years. I’ve worked using multiple design paradigms– Waterfall, Cowboy, and something like Agile. I personally prefer an Agile software development method– many regular releases as customers need them, versus huge planned releases. One of the keys behind successful and efficient Agile development is shortening iterations.

Iterations are all over. Every time I check in source code, build on my build machine, and run it on a QA machine(and potentially go back to change more code to fix/enhance something), is an iteration. Other iterations exist when shipping changes to a website, processes for fulfilling license keys, etc. Each step in the process takes time– being able to eliminate/streamline that process will pay dividends time and time again, in exchange for a little time upfront to automate it.

Even better yet, is being able to automate iterations so they’re triggered and performed automatically. One of these, is automatic fulfillment of license keys. I sell two of my products, Overseer Network Monitor and Employee Scheduling Pro, online. When someone purchases a key, they expect that license immediately. While it may take time to write the appropriate code to integrate with the shopping cart, doing so pays off two fold– one, in that I don’t have to spend the time manually generating the key and sending it to the customer, and the other is that the customer gets it immediately, which makes them happy(happy customers are good customers).

It’s important not to lose site of this… With everything you do, think about how many times you do those steps, and think if you can automate the process– and potentially even the triggering of that process. You’ll thank yourself later.

Employee Scheduling Pro has been released

This past Friday, I officially release Employee Scheduling Pro. This is a product for employee scheduling that I’ve been working on for a few months. I’ve gotten to the point in development that it’s usable by people to schedule their employees, and therefore I’m releasing it. I will continue to develop this software based on customer’s requests and lacking those, perceived need in the software.

Employee Scheduling Pro allows users to create schedules using a wizard and tweak them afterwards. Users can then print out the schedule using either a Daily Schedule report that shows who is working today and what their job is, or an Employee Schedule report, which prints employee’s shift on a calendar so an employee can easily find when they’re working that week.

Other features still to come, will be posting the schedule online for employees to see, Emailing them their schedules, and more. If you have any suggestions for features, please contact me at dkalweit@sensiblesoftware.com.

Thanks.

 

Windows 2008 R2 DNS issues

So, I’ve had issues with Facebook pictures for at least a few weeks now. About half of them would just come up with the “unable to load image” icon. I experienced this in IE, Firefox, and Chrome, so I knew it wasn’t a browser issue… I figured it was a Facebook server or code issue.

I spent some time today with Wireshark to figure out where it was failing. I found that my internal DNS server was failing. This server runs W2K8 R2, and is my domain controller for my small network here.  I checked the event logs, and found multiple event 5501’s– saying that it received a malformed packet from another DNS server… I did a little research on this, and stumbled upon this blog entry that details the problem:

http://weblogs.asp.net/owscott/archive/2009/09/15/windows-server-2008-r2-dns-issues.aspx

I disabled the EDNS probes as the article suggested, and my problems instantly went away.  Why MS shipped a default that doesn’t play nicely with standard DNS servers is beyond me… But I suppose it’s not a first… I’m just glad I’ve resolved my issue.

The negative of using multiple monitors

Using multiple monitors is great. Personally, I use 4 large 23″ widescreen LCDs on Ergotron arms. This works amazingly well, and my productivity is improved considerably by using them. I’m able to have multiple copies of Visual Studio 2010 running, and sometimes even lay them out side by side. I also have a browser on one screen, Email on another, spreadsheets for tracking misc. info shared on another, etc.

The big problem with this, comes when I’ve been couped up all winter, and spring hits… The last couple days have been a “false spring” with 60º+ weather(quite pleasant for Rochester, NY). I would love to be able to sit out on my deck and work on my laptop… The problem with that, is I’d have to make due with only one 17″ screen. That means going from 976 square inches of desktop space to around 129 square inches… That’s losing 86.8% of my desktop!

The only solution I can think of(until multiple screen laptops are a feasible reality), is finding a single task that I can do on a single screen, and simply tolerate a longer turn-around for Email responses(considering I can’t monitor it as well), etc… Unfortunately, I can’t always find such simple tasks, particularly that need to be done when the weather is nice…

Exercise while playing games

About a year ago, I had the bright idea to get a recumbent bike and put a computer with a big TV in front of it to exercise while playing WoW. I created a website for it to show people pictures, etc. I used it for a few months, but eventually lost interest in WoW and ended up walking outside instead(probably better for me anyways). I eventually moved the TV to my bedroom, swapping it with the smaller TV that was up there, and I hooked up a PS2 instead– and occasionally I use that to play games while exercising on the bike. Overall, however, I just use that site for blogging about how to make WoW gold and such…. Feel free to check it out.

Crystal Reports 2010 has a huge redistributable

So today I investigated reporting options for Employee Scheduling Pro. I had previously used Crystal Reports 2008 for Visual Studio 2008 with some success. It felt clumsy and bloated, but it worked. Overall, considering my previous experience and the ‘industry standard’ it has become, I was planning on using it.

Come to find out, Visual Studio 2010 didn’t ship with Crystal Reports as previous versions did. It included a link to Business Object’s site for a beta2 of the Crystal Reports 2010 for Visual Studio 2010. It’s still free, but is very late– it’s still not released, even though it was supposed to be released in Q4 2010 and it’s late in Q1 of 2011… Regardless, I looked at downloading this beta to evaluate if it was still useful, but I found that the redistributable is 72MB!!! In comparison, the CR2008 redistributable is roughly 17MB…. 72MB to add a few reports to an otherwise simple app? I don’t think so… In addition to this, I find that CR2010 requires .NET 4.0, which forces me to bloat my installer more and eliminate OS support(such as W2K)… I don’t know about you, but I really don’t think a 100MB+ download is acceptable for an Employee Scheduling Software tool…

Fortunately, I had a good alternative. DevExpress, which is the toolkit I’ve used for my Win Forms controls, also has a reporting control that’s actually included in my subscription. Upon investigation online, it appears XtraReports is pretty decent– and it can even import existing Crystal Reports which will be useful for other projects that I may want to upgrade in the future… In comparison, XtraReports will add a couple megabytes(even less once compressed in the installer). I’ll also have the added bonus of having a report viewer that’s skinned in the same manner as the rest of Employee Scheduling Pro.

How to Email a cell phone

For many reasons, many people may want to Email a text message to their cell phone. This might be used to notify themselves when their servers or websites go down– or simply to notify them of backup completion or a new sale. If you’re interested in receiving Emails when your servers or websites go down, you may want to check out Overseer, which does exactly that– it is able to send an Email to your phone when your website goes down.

If you’d like to Email a cell phone directly from your Email client, from a script, or something else, you can still do so quite easily. This has the benefit of being free for the person sending the email, but the recipient may still pay to receive the email as a text message. To send a text message to someone’s cell phone via Email, you will need to know their phone number and what cell phone carrier they use. To send a text message to a cell phone, simply send an Email to the appropriate Email address:

AT&T phonenumber@txt.att.net
Cingular Wireless phonenumber@mobile.mycingular.com
Cricket phonenumber@sms.mycricket.com
Metro PCS phonenumber@mymetropcs.com
Nextel phonenumber@messaging.nextel.com
Sprint PCS phonenumber@messaging.sprintpcs.com
T-Mobile phonenumber@tmomail.net
US Cellular phonenumber@email.uscc.net
Verizon phonenumber@vtext.com
Virgin Mobile phonenumber@vmobl.com

 

Remember to keep your EMails short, as the recipient will be receiving them on a small screen, and long Emails may be cut off or split between multiple text messages(and they’ll get charged for each one by their carrier). Also, if your carrier isn’t here, it may be here: Cell Phone Email Addresses.