29
Fri, Nov
0 New Articles

10 Reasons IBM i Developers May Want to Take a Closer Look at Microsoft .NET

General
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

What language will you choose when you're ready to go to the next level?

 

Development languages. There are many of them! If you're curious, the Tiobe Index ranks them for you based on popularity calculated from various search engines. For November, C is #1 again, Java is at #2, PHP is at #6, and C# is at #5. COBOL has fallen a spot to #28, CL gets in at #65, and RPG ekes out a spot in the top 100 at #93. Check out the new Google Trends tool for another comparison. For the most part, RPG and COBOL hold our legacy on the IBM i, while Java and PHP are the platform favorites and are heavily positioned by IBM for the future.

 

Take what you will from the Tiobe index, I find it fun to have a look at once in a while. It is interesting to see trends come and go. For example, only five years ago RPG was ranked at #18. What do you think it means to go from #18 to #93? Everyone knows they need to modernize. RPG and COBOL have their issues, but mostly the problem is the sheer quantity of code and unwillingness of developers to venture into new worlds. Some tools open up the opportunity to breathe new life and options into RPG (Open Access being one of them), but even adopting those tools requires the adoption of other technologies.

 

The big question is this: What do you choose when you're ready to move beyond RPG or COBOL? In the IBM i space, .NET has often gotten a bad rap. But why? I believe mostly due to fear, which spurs the impulse to Forget Everything And Run. Alternatively, I like to take a closer look at that fear and see if it is actually False Evidence Appearing Real. In this case, I believe the false evidence is that Microsoft is the devil, and adopting .NET means moving off the platform. Both of these reasons I consider to be arguably absurd. I encourage you, IBM i developers, to take a closer look. .NET just may be what you've been looking for all along.

 

Whether you already use .NET or not, you may be wondering if it is really right for you. You may also have already cast it aside. No matter, the following are 10 reasons you may want to take a closer look at .NET.

 

1) Microsoft's Vast Ecosystem: Widely Known and Large Community

Coming from legacy IBM i development, we programmers were very nervous in the early days about adopting .NET! We had evaluated Java and PHP, as well as other options, but ultimately chose .NET. Developing in .NET was completely new to us. It took some learning just to figure out where to start, to understand where to go after "Hello World." But, once we did, it was like the shackles were removed and we were free. There were so many options, so many capabilities. But now we had a new problemtoo many choices. There were so many ways to do the same thing. We started second wondering whether we were doing it the right way. Would the users like it? Would it perform well? Being developers in the IBM i space, where we have always felt so sure of what we were doing, that was probably one of the most frustrating and debilitating issues early on.

 

That's when we found our next enlightenment. The knowledge base and huge community-driven ecosystem available was fantastic, from both Microsoft themselves and the vast development community. One of the most critical pieces often overlook in modernization projects is the ability to get answers and find readily available help and talent. For this, you must use technologies and tools that are widely known. The Tiobe index and technology job boards are good indicators of how widely a technology is used; however, I suggest you also look into other areas to get a full grasp of what's available. Some examples are:

  • The Technology Provider's, in this case Microsoft's, Resources:

 

 

  • Training and Educational Options: Have a look at Reason #7 for details on this.
  • Open Source Options: Check out CodePlex and other open-source communities. Even Microsoft's ASP.NET MVC, Web APIs, and Razor Web Pages are open source.
  • Online Communities: There are thriving generalized communities such as Stack Overflow and Code Project that provide significant .NET targeted sections. A simple Google search will yield many more. Channel 9 is a great Microsoft community site that has video channels, discussions, podcasts, screencasts, and interviews with everyone from community members to Microsoft execs. There are also numerous developer blogs. Check out ASP.Net Community Blogs and MSDN Blogs for just some of them.
  • Local User Groups: In order to excel, any developer should belong to a user group. Networking within a user group allows you to surround yourself with like-minded developers, solve any problems that you're experiencing, and stay at the top of your game. Meetup and Community Megaphone are great resources for finding user groups, but again, a simple Google search works just as well. User groups are typically well supported with knowledgeable speakers and swag by the local developer community, Microsoft developer evangelists, and .NET controls vendors. Meetings are both educational and fun. These organizations often host weekend-long, free educational Code Camps, business-starting Hackathons, and various other industry events.
  • Technology conferences: The .NET community has some of the biggest and best conferences in the industry. They are almost always sold out. For those who can't attend, many of the conferences are streamed real time for free. There are also many virtual conferences available.

 

With apps, training books, tools, controls, and even a partner network at your disposal, there's limitless access to the resources that you need to situate yourself for success.

 

2) Powerful and Extensible Integrated Development Environment (IDE)

.NET development becomes even simpler with Microsoft's Visual Studio, a powerful environment that is not only extensible, but easily integrated with other development solutions. Microsoft works hard to ensure that it is continually updated to support the latest technologies as they emerge. Similar to Eclipse for Java developers, Microsoft Visual Studio offers a number of features out of the box, and the surrounding ecosystem and Open IDE brags thousands of community add-ins on the built-in package manager. NuGet.org offers 28,500+ unique extension packages. Just one year ago, there were "only" 14,000 if that gives you a better idea of the growing resources for Visual Studio and Microsoft development.

 

Microsoft provides the core tools, but it is the openness of and ability to integrate with those technologies that makes the community the primary driver of the innovation. For example, while Microsoft is heavily focused on the mobile space with their own mobile platform, companies such as Xamarin enable .NET to be used with Apple and Android devices. And, if you are thinking of running .NET applications on other platforms, have a look into Mono. With .NET's continued and growing adoption even in the IBM i space, perhaps that is something we will see in the future again. As with all their partners, Microsoft supports these companies and encourages the innovation.

 

3) Readily Available Skills and Multi-Vendor Support

Many companies struggle to find developers for their legacy systems. Finding RPG, COBOL, Synon, LANSA, and other IBM i-specific development technologies is getting harder and harder. IT education firms like ProTech Training and LearningTree continue to offer RPG and COBOL courses, but finding developers to put in those courses is a struggle.

 

Comparatively, if you needed .NET developers right now, you'd find a large talent pool to select from. A job search for .NET yields thousands of listings, which is not only a good indication of the number of companies already developing in .NET, but also a good idea of the amount of talent that is out there. Having immediate access to those skilled in .NET is crucial. Whether you're in need of employees, consultants, or both, you want to make sure that the tools you use are supported and serviced. The more options you have, the greater the chance of finding the right talent at the right price and finding them locally. If you are going to pay a premium, make sure it is because you getting premium service, not because you are beholden to a single company for talent.

 

4) Mobile, Web, and WindowsIt's About the UX!

Simply put, .NET gives you the most choices. It was only 10 years ago that we started touting Windows, Web, and mobile. The needs for all three interfaces still exist, but the priority has shifted. At Surround Technologies, we now take a mobile-first approach to all of our Web development, delivering a responsive interface to the different-sized devices and sometimes adding adaptive functionality for touch- and smaller-device needs.

 

A great application helps users succeed in the easiest and fastest way possible. Users with knowledge of your business should be able to use it with minimal to no training, and they should be able to find what they need to make informed business decisions and complete tasks in an efficient manner.

 

Development on the IBM i has always been heavily focused on business needs, and now there is all this other technology to deal with. In fact, many developers today spend much of their time dealing with multiple technology issues instead of delivering the much-needed business solutions themselves. .NET as well as the various .NET productivity solutions can help to consolidate much of that.

 

.NET has many tools that provide developers with the flexibility they need for development in the following realms:

  • Windows Apps: Microsoft's Windows Presentation Foundation (WPF) makes developing these apps much faster and better than in the past Winform days, and they're the hands-down best option for line-of-business applications where you demand peak user productivity or require integration with other systems and devices.
  • Desktop, Tablet, Mobile Responsive Web Sites, and Apps: The Model-View-Controller (MVC) development pattern was a game changer for development in this area. Microsoft's has firmly adopted HTML and web development, including HTML5, which is now the desk application development language for Windows 8 and beyond. With the ASP.NET MVC development framework, .NET is an extremely powerful option for enterprise web applications that work on all devices. Microsoft also has templates for utilizing CSS and JavaScript frameworks like JQuery, Bootstrap, and AngularJS.
  • Native Mobile Apps: Historically, when it came to developing in the native mobile app space, many enterprise organizations avoided it because of the cost and time associated with building the software in each of the platforms' native languages: Objective C for Apple, Java for Android, and .NET for Windows

With the ever-growing popularity of smartphones and heavy competition between providers, this is no longer an option. For quick native+web hybrid apps look into using Phone Gap. For full native apps on all three platforms built all in .NET, look into Microsoft partner Xamarin.

 

5) It Just Might Save the Platform

There is a myth in the IBM i community that the introduction of .NET spells the end of the IBM i. It has been our experience, however, that it is the best way to keep it. Often, company execs choose to abandon the platform because they feel trapped with their current software, unaware that it is not the hardware but the development that is the trap. The choice of hardware is an IT decision. I suspect that upper-level management really doesn't want to even care about it. They just want greater productivity, better integration, and fewer user complaints. When they see that they can provide the same level of enterprise software as they see elsewhere in the industry, then the choice of hardware will be based on IT's choice for performance and reliability of the hardware.

 

6) It's Good for Your Future and Your Company's, Too

It is hard to believe, but many IBM i shops have not begun modernizing their systems or even taken on small projects to extend or modernize parts of it. Executives and IT directors should understand that moving away from these aging languages isn't an option; it's a requirement. It's an "evolve or die" situation, and it's no longer a matter of when or if, but whether to buy a new package or modernize what you have.

 

As more and more enterprise organizations move away from legacy and proprietary technologies, career opportunities become fewer and often mean having to relocate to find them. Learning .NET will open up a developers' options and do great things for their company, their overall personal career, and their net worth to the business. It's your choice to be part of either the maintenance drag or the future solution. And, if it is fear of this unknown technology holding you back, take comfort in knowing that it's not that hard. Take the first step by reading the next reason.

 

7) It's Not That Hard (At Least, It Doesn't Have to Be)

What I have observed over the years is that many developers have tried to provide modern software. They have done some Java or PHP or .NET programming and usually got it to work, but they go it alone and it takes a lot of time and effort, often leaving them wondering, Why does this have to be so hard?

 

It doesn't have to be. There is a plethora of free and fee-based training options available for .NET. Here are just a few that we and our clients have found useful:

  1. Welcome to Visual Studio: This page has a set of links to download, understand, and guide you through the various parts and use of the IDE.
  2. "How Do I?" Video Series
  3. Visual C# Resources
  4. Visual Studio Information on Windows Presentation Foundation
  1. ASP.NET MVC 5 General Information

 

  • Self-Study Books
  1. Microsoft .NET: Architecting Applications for the Enterprise
  2. Pro C# 5.0 and .NET 4.5 Framework
  3. Pro WPF 4.5 in C#
  4. WPF 4.5 Unleashed
  5. Pro ASP.NET MVC 5
  6. Pro jQuery 2.0
  7. Programming C# 5.0
  8. C# 3.0 Design Patterns
  9. Adaptive Code via C#
  • Training courses: IT training providers' courses and programs have become more effective. Below is a list of resources that many of our clients use to stay current and productive:
  1. Pluralsight
  1. Learning Tree
  1. ProTech Training
  2. Lynda.com
  • Additional Frameworks and tools

 8) It's Fun

Limitations are frustrating. Consider the unthinkable, the impossible, and all the powerfully productive things you see in other software but just can't do with your trusty 80 lines by 24 rows. With .NET, they are totally doable and probably much more achievable than you would think. I have always loved creating software that people appreciated, a hard thing to do in business-related software because people just expect it to do their job. With .NET, we are back to developing rich, productive software that people don't just appreciate, but actually love. Software that they champion for others to use as well. This is what I want for all developers: to create software people love. This doesn't need to be only for the iPhone app developers. You may not make a worldwide viral app like Flappy bird, but you can make companywide viral software. Developing with .NET not only allows you to move away from the limitations that exist with legacy development, but encourages you to foster a continual learning mindset, hone your skills, and be exposed to hundreds of new tools, technologies, and resources along the way. .NET is your opportunity to have fun with software development once again.

 

9) Microsoft is Not Evil

In the past, Microsoft has been labeled as inflexible, closed, and proprietary. In the IBM i world especially, Microsoft is the evil nemesis. But those days are long past. All that has changed. Not only has business in general changed, but Microsoft as a company has changed significantly, embracing openness, enabling cross-platform solutions, and supporting new and growing businesses.

 

Not so sure about that? Have a look at Microsoft's Open Specifications and legally binding Community Promise. Most of Microsoft's newer development solutions are being provided as open source, all of ASP.NET is open source, and Microsoft is also moving some of its existing technologies to open source. Their compiler is a prime example.

 

Also, the Microsoft BizSpark program is a clear example of Microsoft's support and love for programmers and startups. If you want to build a startup on the Microsoft stack, they will give you free licenses to basically every product they make, including SQL Server, and a free MSDN gold subscription for three years. Then they help you market and promote your solution.

 

10) .NET Is Not Just a Programming Language 

It is important to keep in mind that .NET is not just a programming language. It incorporates many languages, the primary of which is C#, Microsoft's equivalent of Java. But .NET is so much more than a language. It includes:

  • A comprehensive Framework Class Library (FCL) with significant base functionality that a developer no longer needs to write.
  • Language interoperability so that code written in one language, like C#, can use code written in various other languages, like VB.
  • Additional frameworks for other core functionality, such as Workflow Foundation, Windows Communication Foundation, Windows Presentation Framework, Entity Framework, etc.
  • The Common Language Runtime (CLR), an application virtual machine that provides services such as security, memory management, and exception handling.

To the developer this means less code to write, faster development and integration, easier and much smaller deployments, and an overall more productive development experience. To the business, this means lower development costs, faster software delivery, and better quality solutions.

 

Those are the top ten reasons, but there is even more greatness in .NET, especially when you dig deeper into the Microsoft partner solutions. With Visual Studio and .NET, Microsoft provides a single environment to support the entire software development lifecycle. It's no wonder Gartner, IDC, and Forrester all agree that Microsoft .NET is the leader in a complete vision for the business.

 

As a company grows and changes and its requirements expand, today's software needs to be able to adapt and change with it. The company needs to enable the business to take advantage of the ever-changing technology environment. It needs to deliver software for all types of users: employees, customers, customers of customers, partners, and vendors. It needs to deliver software where the users are, when they need it, and on the device they choose to use. .NET is the best solution to meet all those demands. Perhaps it's time to explore what a new development environment like .NET could do for you and your company.

 

Lee Paul is the CEO and founding member of Surround Technologies. With over 22 years in the industry, Lee is a software innovator, visionary, and strategist focused on helping and enabling companies use software to tactically and strategically solve their business challenges.

 

Lee's primary role at Surround is in leading the company, executing on its mission, and driving toward its vision. He also serves as both Accelerated Software Development Evangelist and Chief Modernization Strategist, whereby he leverages his years of experience to educate and guide organizations and pursue the best strategies for accelerating software modernization.

 

Surround Technologies is a software-innovation business with solutions and services to substantially accelerate the creation, modernization, delivery, and maintenance of high-quality, state-of-the-art software. Surround's Accelerator is the only rapid application development solution with Windows, Web, and mobile user experiences in an n-tier agile architecture with no limitations or proprietary lock-in. Whether you're modernizing legacy applications or creating new functionality, with Accelerator you can deliver your software faster with better results and more functionality.

 

See more: linkedin.com/in/leepaulsurround | www.surroundtech.com | http://www.imodernization.com/

BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

$

Book Reviews

Resource Center

  • SB Profound WC 5536 Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application. You can find Part 1 here. In Part 2 of our free Node.js Webinar Series, Brian May teaches you the different tooling options available for writing code, debugging, and using Git for version control. Brian will briefly discuss the different tools available, and demonstrate his preferred setup for Node development on IBM i or any platform. Attend this webinar to learn:

  • SB Profound WP 5539More than ever, there is a demand for IT to deliver innovation. Your IBM i has been an essential part of your business operations for years. However, your organization may struggle to maintain the current system and implement new projects. The thousands of customers we've worked with and surveyed state that expectations regarding the digital footprint and vision of the company are not aligned with the current IT environment.

  • SB HelpSystems ROBOT Generic IBM announced the E1080 servers using the latest Power10 processor in September 2021. The most powerful processor from IBM to date, Power10 is designed to handle the demands of doing business in today’s high-tech atmosphere, including running cloud applications, supporting big data, and managing AI workloads. But what does Power10 mean for your data center? In this recorded webinar, IBMers Dan Sundt and Dylan Boday join IBM Power Champion Tom Huntington for a discussion on why Power10 technology is the right strategic investment if you run IBM i, AIX, or Linux. In this action-packed hour, Tom will share trends from the IBM i and AIX user communities while Dan and Dylan dive into the tech specs for key hardware, including:

  • Magic MarkTRY the one package that solves all your document design and printing challenges on all your platforms. Produce bar code labels, electronic forms, ad hoc reports, and RFID tags – without programming! MarkMagic is the only document design and print solution that combines report writing, WYSIWYG label and forms design, and conditional printing in one integrated product. Make sure your data survives when catastrophe hits. Request your trial now!  Request Now.

  • SB HelpSystems ROBOT GenericForms of ransomware has been around for over 30 years, and with more and more organizations suffering attacks each year, it continues to endure. What has made ransomware such a durable threat and what is the best way to combat it? In order to prevent ransomware, organizations must first understand how it works.

  • SB HelpSystems ROBOT GenericIT security is a top priority for businesses around the world, but most IBM i pros don’t know where to begin—and most cybersecurity experts don’t know IBM i. In this session, Robin Tatam explores the business impact of lax IBM i security, the top vulnerabilities putting IBM i at risk, and the steps you can take to protect your organization. If you’re looking to avoid unexpected downtime or corrupted data, you don’t want to miss this session.

  • SB HelpSystems ROBOT GenericCan you trust all of your users all of the time? A typical end user receives 16 malicious emails each month, but only 17 percent of these phishing campaigns are reported to IT. Once an attack is underway, most organizations won’t discover the breach until six months later. A staggering amount of damage can occur in that time. Despite these risks, 93 percent of organizations are leaving their IBM i systems vulnerable to cybercrime. In this on-demand webinar, IBM i security experts Robin Tatam and Sandi Moore will reveal:

  • FORTRA Disaster protection is vital to every business. Yet, it often consists of patched together procedures that are prone to error. From automatic backups to data encryption to media management, Robot automates the routine (yet often complex) tasks of iSeries backup and recovery, saving you time and money and making the process safer and more reliable. Automate your backups with the Robot Backup and Recovery Solution. Key features include:

  • FORTRAManaging messages on your IBM i can be more than a full-time job if you have to do it manually. Messages need a response and resources must be monitored—often over multiple systems and across platforms. How can you be sure you won’t miss important system events? Automate your message center with the Robot Message Management Solution. Key features include:

  • FORTRAThe thought of printing, distributing, and storing iSeries reports manually may reduce you to tears. Paper and labor costs associated with report generation can spiral out of control. Mountains of paper threaten to swamp your files. Robot automates report bursting, distribution, bundling, and archiving, and offers secure, selective online report viewing. Manage your reports with the Robot Report Management Solution. Key features include:

  • FORTRAFor over 30 years, Robot has been a leader in systems management for IBM i. With batch job creation and scheduling at its core, the Robot Job Scheduling Solution reduces the opportunity for human error and helps you maintain service levels, automating even the biggest, most complex runbooks. Manage your job schedule with the Robot Job Scheduling Solution. Key features include:

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • LANSAWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed. Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

  • LANSASupply Chain is becoming increasingly complex and unpredictable. From raw materials for manufacturing to food supply chains, the journey from source to production to delivery to consumers is marred with inefficiencies, manual processes, shortages, recalls, counterfeits, and scandals. In this webinar, we discuss how:

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • Profound Logic Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application.

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: