Tag: software development

  • Are Auto-Updates Good?

    I don't use IE, but I am glad auto updates are coming.

    There has been news recently about automatic updates coming to Internet Explorer. I haven’t paid a lot of attention for the simple reason that I almost never use IE. Since most every site I use these days support Firefox and Chrome, including many Microsoft ones, I use those browsers. While IE might have improved, I’m not sure that’s a reason for me to switch from the Firefox browser that I am very comfortable with.

    On one hand, I think this is a great idea for the browsers. It has the potential to not only ensure better security on the desktop, but potentially also making life easier for developers. If the browsers automatically update to the latest code, that means that the majority, or maybe all, of your clients will be running the same browser. That would greatly simplify the testing and coding requirements for developers.

    It might also greatly enhance the application experience for clients since every IE9, or Firefox 4, or Chrome 15 browser will be the same. I don’t know that I would want this for SQL Server, but for the browser, and potentially other software, I think it’s great.

    However silent updates could also break applications. That could result in a mad scramble when an update occurs by software developers that race to fix problems. I’ve always preferred to apply updates regularly, but not too aggressively. I like to be able to test changes before I deploy them to all my clients. This doesn’t give me that flexibility, but there is one benefit that I do like: my clients won’t have excuses for delaying updates.

    Now when I get an update on a developer’s machine, and they perform a build, I can be confident that the client will have installed the same updates.

    Steve Jones


    The Voice of the DBA Podcasts

  • Truth and Demos

    Demoing SQL Server on stage

    In my career, I’ve given quite a few demos of various types of software, usually in an attempt to show how the application in its best possible light. I suspect that most people giving software demos engage in some level of simplification of a problem, or contriving one completely so as to make the software appear as simple as possible to use. One university thinks that Oracle went a bit too far, promising capabilities and misleading them about the costs and customizations that would be needed.

    I’m sure there are similar examples of this for all software vendors, especially those that sell large software packages such as ERP applications. Some are probably without merit, and are the result of customers not fully understanding what they are buying, but some are probably valid complaints where salespeople have misled customers in order to complete a sale.

    Most of us that work in technology and develop applications never sell our products for money. We often build our systems for internal users, but we are still selling something that I think is more important than money: our professional reputation. We work with clients, we promise to deliver some feature or solve some problem. If we do not complete the work as we agreed to, either we are not doing a good job, or we are misleading our clients. It’s the same way we might feel misled by salespeople when some purchase we make doesn’t work as expected.

    It’s your career, it’s your reputation, and I’d hope that most of you would want to ensure that when someone speaks of your work, they do so positively. Learn to communicate well with your clients, but do so in a fair, and truthful way that not only promises when you can deliver, but warns them about what you cannot. Or at least what it will cost.

    Steve Jones


    The Voice of the DBA Podcasts

  • Propose this to your boss

    If Nordstrom's can have an innovation lab, can't you?

    I’ve written a few times about the ways in which you could find interesting projects at work and potentially learn a few new skills while improving the ways your company uses technology. More and more companies are willing to allow side projects like the Google 20% time or the Atlassian FedEx days. My own company, Red Gate Software, implements this a few times a year as “Down Tools Week.”

    Many of you have replied that your companies are resistant to this, or your boss doesn’t think it’s a good idea. I have certainly had a few managers that felt that way, but I’ve also had success over time in changing their minds a bit. I’ve been able to get them to give me the chance to pilot ideas in a small way. Sometimes it’s taken years, but I’ve learned to play “long ball” and think about succeeding over time, not getting my way this week.

    One of the ways you can convince someone to give you a chance is to continue to show other examples of success from other companies. Nordstrom’s, not necessarily the place you’d expect to see IT innovation, has a video of how their lab enables them to build better applications. It might be worth saving this link, and even sending it to your boss with a proposal.

    If your boss is supportive, ask for a week to work on a project with another person or two and spec something out in your proposal. If your boss is skeptical, ask for a few half days across a month to work on something and build some basic prototype project. Even if it’s mocked up on paper, you can show the value of how an idea might work. If you get some support from your end users and customers, you might find yourself with a fun project to work on in 2012.

    Steve Jones


    The Voice of the DBA Podcasts

  • Jacks of all trades

    I'm a jack of all trades at the ranch, but not in software.

    Does your envrionment look like the one at Instagram? I’d bet that you ha there are a few of you that have an applicaiton or two that contains as many servers, components, pieces and parts, all held together with the proverbial duct tape and baling twine. I think I’ve had a few environments that were close to this complicated, but in general I try to avoid this type of mish mosh of technologies tools and platforms.

    When I look at the SQLServerCentral architecture, while much smaller, still scales nicely on a single database server (clustered) and a web server. If I needed more performance, I’d hope that I could do something more similar to the setup at StackOverflow, with better development and fewer parts of my architecture than adding the type of complexity that powers Instagram.

    That’s not to say that one environment is better than the other. I know that the staff at Instagram is learning a lot about integrating disparate systems, building new tools that can better manage their environment. As I read through the list, I’m not sure it’s a lot different than some of the environments I’ve worked in. If I listed all the pieces of software I’ve used in some applications, it might be just as complex, though it didn’t feel that way at the time.

    I tend to prefer a simple environment, using as few pieces of software as necessary, but using the pieces that are appropriate for the job. Rather than build a complex XML processor, or fumble with XML in T-SQL, if I could buy a module that handled that function, I’d be happy to do so.

    Working in technology is about choices, making the build/buy decision over and over, on a regular basis, and making the best decisions we can.

    Steve Jones


    The Voice of the DBA Podcasts