Advertisements
Skip to content

Posts tagged ‘obsolete’

23
Jun

Visual Basic: Not as Shiny, Still as Viable

Today I came across the article The Rise and Fall of Visual Basic by Matthew MacDonald on Hacker News.

Today, Visual Basic is in a strange position. It has roughly 0% of the mindshare among professional developers—it doesn’t even chart in professional developer surveys or show up in GitHub repositories. However, it’s still out there in the wild, holding Office macros together, powering old Access databases and ancient ASP web pages, and attracting .NET newcomers. The TIOBE index, which attempts to gauge language popularity by looking at search results, still ranks VB in the top five most talked-about languages.

But it seems that the momentum has shifted for the last time. In 2017, Microsoft announced that it would begin adding new language features to C# that might never appear in Visual Basic. The change doesn’t return VB to ugly duckling status, but it does take away some of its .NET status.

Truthfully, the trend to sideline VB has been there for years. Serious developers know that key parts of .NET are written in C#. They know that C# is the language of choice for presentations, books, courses, and developer workshops. If you want to speak VB, it won’t harm the applications you build, but it might handicap your ability to talk to other developers.

[…]

Visual Basic has been threatened before. But this time feels different. It seems like the sun is finally setting on one of the world’s most popular programming languages. Even if it’s true, Visual Basic won’t disappear for decades. Instead, it will become another legacy product, an overlooked tool without a passion or future. Whether we’ve lost something special—or finally put an old dog out of its misery—is for you to decide.

Visual Basic may not be getting much love these days, but its functionality is still there. Mads Torgersen says that the ongoing strategy for VB, as of 2017, is to “do everything necessary to keep it a first class citizen of the .NET ecosystem” by focusing “innovation on the core scenarios and domains where VB is popular.” It is still being actively developed, used, and implemented.

The point is, a language’s popularity should not determine its usefulness. Michael Born said it best in his article Yes, CF is “Unpopular”. No, I don’t care.

Popularity is not the end goal. I’ll say it again: popularity is not the end goal! If your language of choice has a scheduled release every two years and hundreds of thousands of active developers, it won’t matter one bit unless that language is useful. Node.js, as a language, is almost worthless without its immense open-source ecosystem. You won’t find any real-world applications running on Node without the use of dozens or hundreds of npm libraries simply because Node is not useful in and of itself.

That’s not a bad thing! Node is an excellent language to learn, and is very powerful thanks to its immense popularity and large package ecosystem – but just remember that without the ecosystem, Node as a language would be a footnote in the annals of history.

We really need to stop with these asinine sunset articles and gloom-and-doom rants on programming languages. More importantly, we need to stop treating them as fads, religions, or special memberships to the cool kids clubs.

 

Advertisements
11
May

Is tech that’s deemed “obsolete” by outsiders “broken”?

The other day I was reading the post IT runs on Java 8 by Vicki Boykis. From the post:

 

In today’s online economy where thousands of developers are online, the person whose voice is the loudest gets the most weight. The loudest people aren’t going to be those working with legacy systems. (Unless you’re doing something extremely new).

This piece of the puzzle is the one that worries me the most. What I’m worried about is that places like Hacker News, r/programming, the tech press, and conferences expose us to a number of tech-forward biases about our industry that are overenthusiastic about the promises of new technology without talking about tradeoffs. That the loudest voices get the most credibility, and, that, as a result, we are listening to complicated set-ups and overengineering systems of distributed networking and queues and serverless and microservices and machine learning platforms that our companies don’t need, and that most other developers that pick up our work can’t relate to, or can even work with.

I’ve spoken and written about it at length, but, most times, easier is best.

And, if the tech is, in fact old and outdated, and the tradeoff from replacing it is lower than the tradeoff of keeping it, we shouldn’t be jumping to replace it with the latest and greatest. While we should evaluate new tools evenhandedly, most times, Postgres works just fine.

For better or worse, the world still runs on Excel, Java 8, and Sharepoint, and I think it’s important for us as technology professionals to remember and be empathetic of that.

 

In a sense, it really spoke to me. I have spent countless hours in situations where the current environment were “handcuffed” as it were to tech that had, at the surface, seemed like it had lived past its prime.

Or had it?

Many instances–public sector especially–are not by any means cutting edge. The utility sector, for instance, in many instances utilizes a de facto serial standard since 1979 that is (by itself) highly succeptible to man-in-the-middle attacks and is very limited in what data it can hold. Other cases it’s a matter of needing to get something out the door as fast as possible. One of my contracts involved an organization that needed an in-house web-based ERP yesterday. (They already utilized an ERP system from Infor that ran on an AS/400 but it was unable to effectively meet the requirements of the vendors for product listing and RPG IV programmers cost a buttload).

And they tasked two guys to do it. The result was a mishmash of ColdFusion (UX layer) and ASP.NET (service layer). This was 2015.

If you are a web developer or programmer, you can already feel the nausea. If you’re not, then understand that this was the equivalent of building Frankenstein’s monster from IKEA using parts you ordered off eBay.

But: it worked. To the best of its ability, it managed to get the job done. Yes, there were a lot of innefficiency in some of the operations that took place, but it got the job done, which to the company was “Good enough.” The skeleton team grew by six people and, from what I hear, is still chugging along with backlog of features that may never be toppled, but that’s a story for another day.

In his article IT’s Famous Last Words: If It Ain’t Broke, Don’t Fix It, Peter Waterhouse states:

 

In IT, we’ve become accustomed to managing services the same way. We keep our heads down and our systems running, prevent outages, and implement new applications. In business, our competitors play the same game, so we pay close attention to making sure our services perform at optimal levels.

This is, and always will be, important. But with the digital revolution, just running an IT shop better than anyone else doesn’t guarantee anything. Rather, success will depend on how quickly you market your offerings, how you structure your IT services, and especially how well you understand the pivotal role IT plays when it comes to remodeling your business.

To draw a parallel from the cut-throat world of retail fashion, clothing and accessory store Zara has become a huge success by developing a disruptive new strategy — and not because they have better stores than their competitors. They looked at what many in their industry regarded as the “not broken” element — slow time to market from initial garment design to shop floor (the tangled cables, if you like), and fixed it with a unique approach (unified design and manufacturing). Similarly, Netflix devastated the home video market, not because their employees worked harder than video store employees, but because they challenged traditional thinking — thinking that wasn’t really broken, just out of step with the move to digital content consumption.

[…]

Running an outdated IT strategy and managing the status quo is a recipe for disaster. The alternative is to work with the business to continuously review existing business models, re-examine cost structures and reduce operational debt to the point where IT is able to deliver the types of new applications and services that customers want.

Of course, none of this is easy if the entire organization is entrenched in the “not broken, don’t fix it” mindset. But fortune favors the bold who challenge traditional thinking.

[…]

So the next time you hear the cringe-worthy phrase “If it ain’t broke, don’t fix it,” stop and think. […] Always remember, it’s the “not broken” things in business that provide the best opportunities for innovation.

 

Maybe chasing after the “latest in greatest” isn’t the answer to remaining ahead of the curve in information technology, at least all the time. One should always evaluate their toolset and make adaptations as necessary in order to fulfill the needs of their customers. Last I checked there is still a need for C programmers.

In the public sector where availability of service, not competition, is the biggest worry, it is prudent to not disrupt the flow of what is provided to the citizens. We still see a lot of “obsolete” tech that still functions being utilized, especially in terms of the hardware that supports the legacy applications. An example is from the article DoD is migrating to Windows 10 and it will probably stick around forever by Kelsey D. Atherton:

 

 

Even after the (April 8, 2014) deadline, the Department of Defense continued to order support for Windows XP, with the Navy purchasing more XP support well into 2016, a year after the switchover to WIndows 10 was announced.

Invariably, the computers running pre-Windows 10 operating systems will dwindle, and the switchover will proceed to a satisfactory degree of accomplishment, even among the holdovers. But I wouldn’t expect older system to die entirely, and whenever the Pentagon switches to the post-10 operating system, expect to see Windows 10 kicking around on backwater computers. After all, this is the same Pentagon that still operates Windows 3.1.

 

Ensuring compatibility of these legacy apps is critical, so specialy care must be taken to ensure that they can be brought gently into the twenty first century.

So in answer to the question on whether “obsolete” tech is “broken”, the answer is: it depends.