Welcome!

Blog Feed Post

Technology Stack Dilemma Explained for Non-Technical Business Owners

There is a popular belief that a technology stack can either make it or break it when it comes to building your software product. That before even a single line of code gets written, you need to carefully select a technology stack that is bound to determine your product’s success.

With a wide selection of tech stacks in the development world today, choosing one that works the best for your project might seem like a daunting task. But it doesn’t have to. There are only a few aspects worth factoring in when you are caught in a technology stack dilemma.

What’s a Technology Stack?

To refresh your memory, a quick overview of what is a technology stack.

technology stack

The technology stack is a combination of programming languages, frameworks, and tools that developers use to build a web or mobile app. The two main components of any app are client-side (front-end) and server-side (back-end). Each layer of the application is built atop the one below, thus creating a stack.

Client-side is everything users see on their screens and where the interaction is happening. The three main technologies in front-end are:

  • HTML (the markup language)
  • CSS (the stylesheet)
  • JavaScript (the scripting language)

Server-side is not visible to a user. But its programming languages power the user side and create the logic of websites and applications. Frameworks for programming languages are time savers. They provide vetted implementations of common features (data access, user authentication etc.).

The only challenge is in choosing server side technologies. But is it that tough of a decision? Let’s dive deeper.

How to Choose a Technology Stack

Choosing a technology stack that will work the best for your project might seem like a real challenge, especially if you are a non-technical founder. The easiest way out would be to rely on your personal preferences or previous experience. But personal preferences are subjective and can lead to wrong decisions. You can only count on it if you have a strong background in web development. Trusting your competitor’s experience or going online to find a myriad of opinions and arguments isn’t a smart choice either. In reality, there are a couple of aspects to be taken into account.

Type of the Project

Sometimes the type of a product you are building determines the stack. Depending on the scope of your project, it makes sense to settle for a certain technology.

If you are launching a startup or want to build quick MVP, Ruby is your match. However, lately, Node.JS have come into play and seems like it might take over sooner than we thought. Both can get you in development by 30% quicker than anyone else. Rapid development is achieved thanks to expressive and concise nature of the language and its flexible syntax, as well as dozens of open-source libraries.

With libraries like Pandas, SciPy and NumPy, Python works perfectly for projects connected with Big Data, Machine Learning. It is a universal language when you need to calculate huge volumes of data. Python is capable of doing it quickly and sufficiently. You can use Python for any kinds of projects, but academic and scientific programming are preferred ones.

Java is a general-use programming language that is a universal solution for on-going, big projects. It can do virtually anything with a decent amount of efficiency. Java offers a myriad of tools, libraries, making it easy for developers to design and implement any feature they want. It is also a choice of 90% Fortune 500 companies.

But when it comes to choosing a tech stack based on the project type, it is mostly a matter of how big it is. If the project is big, you need more competent human resources and a community to have your back.

Talent Pool

Deciding upon a niche or new technology can make a recruiting process a nightmare. Before making a final decision, you need to consider if you can find another developer familiar with this technology stack. If the skills are easily transferable and there will be no problem training a junior developer in the desired technology.

Some of the reports suggest that the demand for enterprise mobile apps is about to outstrip the available development capacity by 500%. In this respect, Java seems like a sensible choice for it is widely popular and given a multi-million community of engineers, it shouldn’t be a problem to find a professional. However, it is also one of the most in demand programming language in 2017.

technology stack

Image Source
Another widespread choice – Python, being popular in academic and scientific circles, it created a large, well-educated talent pool.

What shouldn’t be taken into account when looking for resources is cost. It is a popular misconception that when choosing between technology stacks, the cost of a developer is detrimental. In reality, you have as many chances finding an expensive Ruby developer as you can find a cheap one.

Technology Stack Ecosystem

The ecosystem is a community and tools around a technology. When choosing a technology stack that suits your project, it’s important to check out if there is big enough community around the technology, sufficient information. Whether if you stumble upon a problem or an issue, you will be able to find enough information and a solution. For instance, pretty much every big city around the world has a Ruby community that runs regular meetups. It is also one the most popular languages on Github, a social coding site. Sometimes even closed a ecosystem like .Net has a massive knowledge-base via MSDN, StackOverflow and numerous forums and blogs.

Another important factor is the maturity of the technology. The earlier in its lifecycle, the less reliable the technology is. After several years of iterations, Ruby is considered a reliable and low-risk technology. But it’s not only about the lifespan. Mature technologies also have more tools to make developer’s life easier (like continuous integrations, bug tracking). But they only exist for tech stack where the is a market of developers. A large amount of these tools suggests how safe a technology is. The logic behind the importance of maturity is pretty simple. The more mature a language is, the bigger is the community and the more resources it has.

Can a Wrong Choice of Technology Stack Kill your Project?

technology stack

Now that we’ve covered aspects to consider, the question whether a wrong choice of technology stack can ruin the project still remains, and the answer is – no, it can’t. The reason projects fail is not a technology stack or a language, the cause is in the wrong architecture solutions. Whichever language you choose, it doesn’t mean you are stuck with it for good. Yes, there are some limitations, for instance .Net is limited to Microsoft stack. But it won’t be why your product failed. You can always start a project in one language, say Ruby, and if at some point it doesn’t work for your product anymore, you can go on working on another. One of our in-house projects is exactly the case where two programming languages, Java and Python, were used at the same time to build a chatbot.

Another popular solution for big projects is microservice architecture. Microservice is a service-oriented architecture that structures an app as a collection of loosely coupled services. So the project is not a single application but a set of independently deployable, small services where each can be written in a separate language. For instance, if one part needs to process a large amount of data, engineers choose Python. Another part needs proof of concept where Ruby is a right choice. And one part which is big and stable is written in Java. Thus you choose a language not for a whole project but for a particular task where it’s the best fit.

In the end, whichever technology stack you choose, it all comes down to one – finding a right and trustworthy software vendor that has the experience and expertise you need. Trying to pick one perfect technology stack or a language is like embarking on a holy war where no one is a winner. But with the right, competent team you can make a technology stack perfect for your particular project.

We commit to building quality software products. Take a look at our approach

The post Technology Stack Dilemma Explained for Non-Technical Business Owners appeared first on Perfectial.

Read the original blog entry...

More Stories By Rostyslav Demush

Ross Demush is a digital marketing specialist at custom software development company Perfectial, a leading provider of web & mobile development services, specializing in FinTech, Real Estate, Media & Entertainment & eLearning.

Latest Stories
The current age of digital transformation means that IT organizations must adapt their toolset to cover all digital experiences, beyond just the end users’. Today’s businesses can no longer focus solely on the digital interactions they manage with employees or customers; they must now contend with non-traditional factors. Whether it's the power of brand to make or break a company, the need to monitor across all locations 24/7, or the ability to proactively resolve issues, companies must adapt to...
In his session at 20th Cloud Expo, Scott Davis, CTO of Embotics, discussed how automation can provide the dynamic management required to cost-effectively deliver microservices and container solutions at scale. He also discussed how flexible automation is the key to effectively bridging and seamlessly coordinating both IT and developer needs for component orchestration across disparate clouds – an increasingly important requirement at today’s multi-cloud enterprise.
Modern software design has fundamentally changed how we manage applications, causing many to turn to containers as the new virtual machine for resource management. As container adoption grows beyond stateless applications to stateful workloads, the need for persistent storage is foundational - something customers routinely cite as a top pain point. In his session at @DevOpsSummit at 21st Cloud Expo, Bill Borsari, Head of Systems Engineering at Datera, explored how organizations can reap the bene...
We are seeing a major migration of enterprises applications to the cloud. As cloud and business use of real time applications accelerate, legacy networks are no longer able to architecturally support cloud adoption and deliver the performance and security required by highly distributed enterprises. These outdated solutions have become more costly and complicated to implement, install, manage, and maintain.SD-WAN offers unlimited capabilities for accessing the benefits of the cloud and Internet. ...
In this presentation, you will learn first hand what works and what doesn't while architecting and deploying OpenStack. Some of the topics will include:- best practices for creating repeatable deployments of OpenStack- multi-site considerations- how to customize OpenStack to integrate with your existing systems and security best practices.
"DevOps is set to be one of the most profound disruptions to hit IT in decades," said Andi Mann. "It is a natural extension of cloud computing, and I have seen both firsthand and in independent research the fantastic results DevOps delivers. So I am excited to help the great team at @DevOpsSUMMIT and CloudEXPO tell the world how they can leverage this emerging disruptive trend."
Security, data privacy, reliability and regulatory compliance are critical factors when evaluating whether to move business applications from in-house client hosted environments to a cloud platform. In her session at 18th Cloud Expo, Vandana Viswanathan, Associate Director at Cognizant, In this session, will provide an orientation to the five stages required to implement a cloud hosted solution validation strategy.
Business professionals no longer wonder if they'll migrate to the cloud; it's now a matter of when. The cloud environment has proved to be a major force in transitioning to an agile business model that enables quick decisions and fast implementation that solidify customer relationships. And when the cloud is combined with the power of cognitive computing, it drives innovation and transformation that achieves astounding competitive advantage.
Everyone wants the rainbow - reduced IT costs, scalability, continuity, flexibility, manageability, and innovation. But in order to get to that collaboration rainbow, you need the cloud! In this presentation, we'll cover three areas: First - the rainbow of benefits from cloud collaboration. There are many different reasons why more and more companies and institutions are moving to the cloud. Benefits include: cost savings (reducing on-prem infrastructure, reducing data center foot print, redu...
DXWorldEXPO LLC announced today that "IoT Now" was named media sponsor of CloudEXPO | DXWorldEXPO 2018 New York, which will take place on November 11-13, 2018 in New York City, NY. IoT Now explores the evolving opportunities and challenges facing CSPs, and it passes on some lessons learned from those who have taken the first steps in next-gen IoT services.
Founded in 2000, Chetu Inc. is a global provider of customized software development solutions and IT staff augmentation services for software technology providers. By providing clients with unparalleled niche technology expertise and industry experience, Chetu has become the premiere long-term, back-end software development partner for start-ups, SMBs, and Fortune 500 companies. Chetu is headquartered in Plantation, Florida, with thirteen offices throughout the U.S. and abroad.
DXWorldEXPO LLC announced today that ICC-USA, a computer systems integrator and server manufacturing company focused on developing products and product appliances, will exhibit at the 22nd International CloudEXPO | DXWorldEXPO. DXWordEXPO New York 2018, colocated with CloudEXPO New York 2018 will be held November 11-13, 2018, in New York City. ICC is a computer systems integrator and server manufacturing company focused on developing products and product appliances to meet a wide range of ...
SYS-CON Events announced today that DatacenterDynamics has been named “Media Sponsor” of SYS-CON's 18th International Cloud Expo, which will take place on June 7–9, 2016, at the Javits Center in New York City, NY. DatacenterDynamics is a brand of DCD Group, a global B2B media and publishing company that develops products to help senior professionals in the world's most ICT dependent organizations make risk-based infrastructure and capacity decisions.
René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a m...
The technologies behind big data and cloud computing are converging quickly, offering businesses new capabilities for fast, easy, wide-ranging access to data. However, to capitalize on the cost-efficiencies and time-to-value opportunities of analytics in the cloud, big data and cloud technologies must be integrated and managed properly. Pythian's Director of Big Data and Data Science, Danil Zburivsky will explore: The main technology components and best practices being deployed to take advantage...