Click here to close now.

Welcome!

Microservices Journal Authors: Hovhannes Avoyan, Lori MacVittie, David Sprott, AppDynamics Blog, Liz McMillan

Related Topics: Microservices Journal, Java, XML, .NET, Web 2.0, Big Data Journal

Microservices Journal: Article

Six New Year’s Resolutions for Software Companies in 2013

Take an inventory of what is working well and what is not

By the end of January, it's estimated that 80 percent of those who make New Year's resolutions will have already broken them. The New Year is a time for reflection and introspection, but not necessarily one that leads to action, it seems. The opposite should be true during software companies' annual re-examination of their software development, however. The consequences of not improving development practices can be much more costly than gaining a few more pounds.

Here are six ways to whip software development into shape in 2013:

1. Deliver like Facebook: Facebook dominates its market because it delivers improvements to its site every day. There's no reason you can't deliver small, working improvements to your product almost as quickly. The software tool stack has largely caught up with that velocity, and nothing keeps developers happier than seeing working changes in the product.

So you're not building a SaaS product: don't let that stop you. Product can still rapidly evolve internally without a regulatory process - just adjust the continuous delivery dial back from production servers to formal release handoff. If you're the only one of your competitors with the ability to deliver this quickly, that is quite the competitive advantage.

2. Agile for all levels: You're not really going to be successful with Agile if it's limited to your software teams. DevOps was all about bridging the gap between development and operations, and you'll find greater success by taking Agile cross-functional - imagine your entire company responding as quickly to new requirements as your development team. Agile marketing? It's been done.

3. All aboard the mother ship: Your most valuable assets are your people and your IP - don't operate them in silos. Reuse your IP wherever possible, and make sure your teams can discover and work with each other. If you're buying a startup to acquire the talent, make sure you can incorporate their existing work into your systems in a week - not a year. Make sure they can keep using the tools they know and love (even if you're running something more enterprise-worthy in the background).

4. Take caution with the cloud: The cloud sounds great on paper. Low costs! Infinite scalability! No administration! But in reality the cloud isn't right (yet) for everything you do as a technology company. There are still performance, ownership, and reliability issues to consider. If your employees are asking for a cloud-based solution, figure out why. Do they want Dropbox because they don't have a decent place to store design documents and test plans? Then fix that problem before the team makes a big decision for you.

5. Be a realist: Engineers are practical people. If your current delivery cycle is a year, you won't get it down to a week overnight. Lay out clear goals with a reasonable time frame. If you can go from a year to three months, you're making huge progress and will get buy-in for the next step.

6. Study the America Invents Act: A major change to U.S. patent law is coming into effect in March 2013. Are your IP ducks in a row? Make sure you understand the nuances of first-to-file, prior use and the other big changes. To meet the changing legal framework, be ready to adjust your software processes, from initial design through to shipping to customers. If you're using open source software in your products, make sure you are in compliance with all the licensing and copyright provisions.

As with people, the new year is an ideal time for every organization to take an inventory of what is working well and what is not. The best place to start that process is at the foundation of your software practices - your codebase. A well-organized codebase will not only prevent headaches down the road, but also perfectly position your company for future growth.

More Stories By Randy DeFauw

Randy DeFauw is a Technical Marketing Manager at Perforce Software. Prior to joining Perforce, he was a certified Perforce Consulting Partner and Perforce Certified Trainer. He has extensive experience with Perforce configuration, administration, and integrations. Randy is a frequent contributor to p4 blog, and recently presented the Real World Webinar Agile & the ALM Suite: How Perforce Enables Agile Processes.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


@MicroservicesExpo Stories

Let's just nip the conflation of these terms in the bud, shall we?

"MIcro" is big these days. Both microservices and microsegmentation are having and will continue to have an impact on data center architecture, but not necessarily for the same reasons. There's a growing trend in which folks - particularly those with a network background - conflate the two and use them to mean the same thing.

They are not.

One is about the application. The other, the network. T...

Python is really a language which has swept the scene in recent years in terms of popularity, elegance, and functionality. Research shows that 8 out 10 computer science departments in the U.S. now teach their introductory courses with Python, surpassing Java. Top-ranked CS departments at MIT and UC Berkeley have switched their introductory courses to Python. And the top three MOOC providers (edX, Coursera, and Udacity) all offer introductory programming courses in Python. Not to mention, Python ...
Right off the bat, Newman advises that we should "think of microservices as a specific approach for SOA in the same way that XP or Scrum are specific approaches for Agile Software development". These analogies are very interesting because my expectation was that microservices is a pattern. So I might infer that microservices is a set of process techniques as opposed to an architectural approach. Yet in the book, Newman clearly includes some elements of concept model and architecture as well as p...
Docker is an open platform for developers and sysadmins of distributed applications that enables them to build, ship, and run any app anywhere. Docker allows applications to run on any platform irrespective of what tools were used to build it making it easy to distribute, test, and run software. I found this 5 Minute Docker video, which is very helpful when you want to get a quick and digestible overview. If you want to learn more, you can go to Docker’s web page and start with this Docker intro...
Containers Expo Blog covers the world of containers, as this lightweight alternative to virtual machines enables developers to work with identical dev environments and stacks. Containers Expo Blog offers top articles, news stories, and blog posts from the world's well-known experts and guarantees better exposure for its authors than any other publication. Bookmark Containers Expo Blog ▸ Here Follow new article posts on Twitter at @ContainersExpo
The 5th International DevOps Summit, co-located with 17th International Cloud Expo – being held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA – announces that its Call for Papers is open. Born out of proven success in agile development, cloud computing, and process automation, DevOps is a macro trend you cannot afford to miss. From showcase success stories from early adopters and web-scale businesses, DevOps is expanding to organizations of all sizes, including the...
There’s a lot of discussion around managing outages in production via the likes of DevOps principles and the corresponding software development lifecycles that does enable higher quality output from development, however, one cannot lay all blame for “bugs” and failures at the feet of those responsible for coding and development. As developers incorporate features and benefits of these paradigm shift, there is a learning curve and a point of not-knowing-what-is-not-known. Sometimes, the only way ...
You use an agile process; your goal is to make your organization more agile. But what about your data infrastructure? The truth is, today's databases are anything but agile - they are effectively static repositories that are cumbersome to work with, difficult to change, and cannot keep pace with application demands. Performance suffers as a result, and it takes far longer than it should to deliver new features and capabilities needed to make your organization competitive. As your application an...
Over the years, a variety of methodologies have emerged in order to overcome the challenges related to project constraints. The successful use of each methodology seems highly context-dependent. However, communication seems to be the common denominator of the many challenges that project management methodologies intend to resolve. In this respect, Information and Communication Technologies (ICTs) can be viewed as powerful tools for managing projects. Few research papers have focused on the way...
As the world moves from DevOps to NoOps, application deployment to the cloud ought to become a lot simpler. However, applications have been architected with a much tighter coupling than it needs to be which makes deployment in different environments and migration between them harder. The microservices architecture, which is the basis of many new age distributed systems such as OpenStack, Netflix and so on is at the heart of CloudFoundry – a complete developer-oriented Platform as a Service (PaaS...
The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time to wait for long development cycles that produce software that is obsolete at launch. DevOps may be disruptive, but it is essential. The DevOps Summit at Cloud Expo – to be held June 3-5, 2015, at the Javits Center in New York City – will expand the DevOps community, enable a wide...
How can you compare one technology or tool to its competitors? Usually, there is no objective comparison available. So how do you know which is better? Eclipse or IntelliJ IDEA? Java EE or Spring? C# or Java? All you can usually find is a holy war and biased comparisons on vendor sites. But luckily, sometimes, you can find a fair comparison. How does this come to be? By having it co-authored by the stakeholders. The binary repository comparison matrix is one of those rare resources. It is edite...
Cloud Expo, Inc. has announced today that Andi Mann returns to DevOps Summit 2015 as Conference Chair. The 4th International DevOps Summit will take place on June 9-11, 2015, at the Javits Center in New York City. "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 ...
Enterprises are fast realizing the importance of integrating SaaS/Cloud applications, API and on-premises data and processes, to unleash hidden value. This webinar explores how managers can use a Microservice-centric approach to aggressively tackle the unexpected new integration challenges posed by proliferation of cloud, mobile, social and big data projects. Industry analyst and SOA expert Jason Bloomberg will strip away the hype from microservices, and clearly identify their advantages and d...
Software development, like manufacturing, is a craft that requires the application of creative approaches to solve problems given a wide range of constraints. However, while engineering design may be craftwork, the production of most designed objects relies on a standardized and automated manufacturing process. By contrast, much of moving an application from prototype to production and, indeed, maintaining the application through its lifecycle has often remained craftwork. In his session at Dev...
Amazon, Google and Facebook are household names in part because of their mastery of Big Data. But what about organizations without billions of dollars to spend on Big Data tools - how can they extract value from their data? In his session at 6th Big Data Expo®, Ali Ghodsi, Co-Founder and Head of Engineering at Databricks, discussed how the zero management cost and scalability of the cloud is addressing the challenges and pain points that data engineers face when working with Big Data. He also s...
Container frameworks, such as Docker, provide a variety of benefits, including density of deployment across infrastructure, convenience for application developers to push updates with low operational hand-holding, and a fairly well-defined deployment workflow that can be orchestrated. Container frameworks also enable a DevOps approach to application development by cleanly separating concerns between operations and development teams. But running multi-container, multi-server apps with containers ...
The stack is the hack, Jack. That's my takeaway from several events I attended over the past few weeks in Silicon Valley and Southeast Asia. I listened to and participated in discussions about everything from large datacenter management (think Facebook Open Compute) to enterprise-level cyberfraud (at a seminar in Manila attended by the US State Dept. and Philippine National Police) to the world of entrepreneurial startups, app deployment, and mobility (in a series of meetups and talks in bot...
SYS-CON Events announced today that EnterpriseDB (EDB), the leading worldwide provider of enterprise-class Postgres products and database compatibility solutions, will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. EDB is the largest provider of Postgres software and services that provides enterprise-class performance and scalability and the open source freedom to divert budget from more costly traditiona...
The Internet of Things is a misnomer. That implies that everything is on the Internet, and that simply should not be - especially for things that are blurring the line between medical devices that stimulate like a pacemaker and quantified self-sensors like a pedometer or pulse tracker. The mesh of things that we manage must be segmented into zones of trust for sensing data, transmitting data, receiving command and control administrative changes, and peer-to-peer mesh messaging. In his session a...