Credits: Cio

Credits: Cio

 

Getting started and finding your groove is a challenge with any new team, especially if you want to move quickly. But there’s an alternative to a slow start when it comes to software — outsource your development. Here are six ways to know you’ve outsourced your software engineering to a world-class team who’s ready to get the job done.

1. They’re fast-accelerating

When you outsource software development to the right team, they’re ready to go — Sprint Zero. According to Renee Troughton, author of Agile Forest and co-chair of The Agile Revolution podcast, Sprint Zero is “being ready and able to deliver business value that is usable and potentially releasable.” Who wouldn’t want that? Establishing an internal team is a completely different situation. If you decide to field an in-house team, expect to spend significant time — as much as six months to a year — on the recruiting and hiring process, situating employees in their work spaces, discussing company policies and other HR tasks, inescapably delaying your software project. But when you outsource software development, a fast-accelerating team will be ready to work — right from the start — providing an efficient launch.

2. They’re crazy innovative

By the nature of their job, outsourced development teams have broader exposure to a variety of software initiatives. This makes them more innovative thinkers who can look at different ways of creating software, solving problems and overcoming challenges. The more software they develop — and the more types of software they touch across different industries — the better they become.

3. They’re super knowledgeable

Good software development teams know industry standards, processes and procedures, and concepts like DevOps and agile aren’t new to them. They follow best practices and testing to make sure quality code and software is delivered. In addition to being well-informed, smart teams ask lots of questions. They initiate discussions about where the software will be hosted and they help sort out all of the details, if needed, when planning your software.

4. They live and breathe the latest trends and technologies

A great software development team doesn’t just know and understand the latest updates and trends; they pursue and adopt them. Good teams determine the best technology for your software from among the many choices, and they’re open and free with all tech discussions, to bring greater value to the final software product. Like what you may ask? In 2015 it was IoT, React and the MEAN stack. In 2016, it was the ELK stack, microservices and Spark.

5. They have shadow workers

Expect shadow workers on your software team, who work or review the team’s efforts in tandem. All great software outsourcing companies follow this practice. This way, if someone leaves the company, another developer is ready to take their spot. There’s continuity, so things continue uninterrupted and trouble-free. You’ll never miss a release or other deadline because of lack of talent.

6. Their diversity rocks

A great software team will have diversity, says Mike Cannon-Brookes, Atlassian co-founder and co-CEO, whose company offers a software development tool used by agile teams. In a recent article in The Australian, Cannon-Brookes says, “True genius results when people from different experiences come together to tackle tough challenges. That’s why teams — not just companies — need to be diverse and inclusive for the most meaningful business impact. When software development teams have different experience and backgrounds, it contributes to making the best possible software.”

And Scientific American says, “Decades of research by organizational scientists, psychologists, sociologists, economists and demographers shows that socially diverse groups (that is, those with a diversity of race, ethnicity, gender and sexual orientation) are more innovative than homogeneous groups.”

Credits: Entrepreneur

Credits: Entrepreneur

 

Entrepreneurs always look for hacks to do things in a cheaper, faster and more efficient manner. Sometimes, though, the perceived savings aren’t worth the ultimate cost.

I’m a serial entrepreneur. Over the past several years, I’ve successfully built and scaled both on-site and remote teams for my startups. I’ve also burned my fingers trying to outsource software development.

I’d intended to contract with a few developers to code certain sections of the codebase so the larger team could hit our release deadlines. We were in the bootstrapping phase and thought it seemed like a good idea. It turned out to be a disaster. Here are the key reasons why.

1. Different mindsets lead to misaligned goals.

The venture was my baby, and I was fully committed. But to the software developer, we were just another client — and a very small one, at that. When a large client increased its requirement, a resource crunch meant our project suffered delays.

Moreover, our hired experts always were trying to convince us to build more features. The company benefited from scope creep while we became distracted from our minimum viable product (MVP) approach. Our two companies had different incentives, and this often led to working at cross-purposes.

Related: How to Know When to Bring Software Development In-House

2. Contract negotiations can be complex and time-consuming.

I spent a great deal of time finalizing the contract with the software company, and my startup simply hadn’t expected this loss of productive hours. We wanted to get off and running quickly. Instead, it took us between three and four weeks to define, negotiate and execute the contract.

To be fair, there are some valid reasons for budgeting several weeks to fine-tune a contract. There’s no easy way around defining the scope of work, identifying each party’s responsibilities and putting in place a service-level agreement (SLA). If the contract isn’t well-thought-out, you’ll have even bigger problems down the road. Entrepreneurs are wise to plan for this necessary time lag, not rush through and trust everything will work itself out later.

Related: 9 Ways to Negotiate a Contract Like a Boss

3. The quality might be hit-and-miss.

The quality of developers at outsourcing companies tends to be mixed. In my experience, the quality typically has been below average. Several developers assigned to my startup project didn’t deliver what we needed. We had to haggle with the company to replace them, enduring a painful process that cost us more time and energy. To make matters worse, the code itself wasn’t up to our quality standards and our codebase became fragmented.

Related: These 25 Successful Startups Were Built With Outsourced Development

4. In-house talent isn’t proficient at managing outsourced project work.

Many startups ignore the fact that managing outsourced teams requires expertise and a special skill set. Outsourcing is a fundamentally different process from in-house development.

Few startups have a team member who has done it before, and this also increases the chances of failure. Outsourcing firms can gauge your inexperience. Unscrupulous companies might even exploit this weakness to hike their upfront time and cost estimates. To be effective, you’ll need to master a host of challenging and complex tasks:

  • Clearly define your requirements.
  • Assign which modules will be developed in-house and which will be created by the outsourcing vendor.
  • Plan smooth integration of codes in your master codebase.
  • Plan and execute agreed-upon quality-assurance measures and procedures.
  • Monitor timelines.
  • Provide regular feedback.

Related: 5 Ways to Manage an Outsourced Team on a Startup Budget

Our startup felt confident going into our outsourcing adventure because our team included someone with prior experience managing external work. He still found it tough to oversee the project. Trust me: It’s not a simple proposition. I strongly advise against outsourcing software development unless a company has its own, in-house expert.

5. External issues have a domino effect on your organization.

When you run with a small team, issues don’t remain siloed. If your outsourced project isn’t going well, the stress tends to impact other areas of your business. At the very least, it will be a huge distraction to your overall operations.

Delays and quality issues are normal and expected with outsourced projects. Yet startups aren’t often aware of this fact and don’t plan for how they’ll mitigate the fallout. When issues started surfacing with our outsourced project, it had a ripple effect. Our CTO was directly involved with the outsourced project and spent a disproportionate amount of his time on project management. As a result, internal employees didn’t get adequate time from him, and they started missing their deadlines.

Morale suffered, and workers started slacking off. The tech team’s delays, in turn, caused setbacks in our product and sales divisions. This was particularly frustrating because we’d promised additional functionality to our early clients and risked losing them if we did not deliver. The outsourced project went over budget — something we later realized is a very frequent occurrence. Funding concerns put extra pressure on us as an early-stage startup.

Related: 4 Ways to Build Trust and Help Manage Your Team

Here’s the takeaway: We spent much more time, money and effort than we’d expected, and we ended up either not using or rewriting most of the code created by the outsourcing company. In hindsight, it was a mistake. Every business’ situation is unique, and it might work for some organizations. But the chances of thing going wrong are higher when you control fewer elements of the whole, and that’s especially true for startups and smaller organizations.

The next time you consider outsourcing your company’s software development, think again. Or at least think about these lessons learned. They’ll help you go in with open eyes and a more realistic picture of what you can achieve.

Credits: Heise

Credits: Heise

Obviously, the Java Development Kit can not be reached by Oracles officially. German users are warned that the software can not be downloaded in their country.

Those currently download from the official Oracle site the JDK (Java Development Kit), looking at Germany and apparently some other countries in the tube: A resident in Australia developer had heise Developer suggests that the download from his country impossible be. Our tests confirmed the occurrence of the same error when calling the site from a German client.

Obviously the JDK can not be downloaded from certain countries at the moment.
Obviously the JDK can not be downloaded from certain countries at the moment. 

Those in the Java SE Development Kit Page 8 the license terms accepted and then one of the jdk-8u111 selects clients for Windows, Linux or Mac OS, is redirected to an error page. This simply means “Because of the location of your country, we can not process your request”. heise Developer has pointed out the problem Oracle.

Credits: Adtmag

Credits: Adtmag

 

Java continues to command the top spot on the latest TIOBE Programming Community Index, edging C, C++, C#, Python and Visual Basic .NET, in that order. The November Top 20 list also included PHP, JavaScript, Assembly, Perl, Objective-C, Swift, Go, Ruby, MATLAB, Delphi, Visual Basic, Groovy, R and PS/SQL.

Poised to break into that list, TIOBE noted, is the functional programming language Haskell, which came in at 23, only 0.255 percent away. “Let’s see what happens the next few months,” TIOBE said. Also on the move, the company noted, are MQL4 (from #52 to #41), Hack (from #76 to #63) and Elixir (from #86 to #64).

TIOBE Software has been publishing the results of its monthly search for the languages in which the most lines of code were written since 2001. The ratings are based on the number of skilled engineers worldwide, language courses, and third-party vendors. TIOBE uses 25 search engines to collect key words from the highest ranked websites of Web traffic monitor Alexa and calculate the most lines of code written in a given month to determine its ratings.

“It is important to note that the TIOBE index is not about the best programming language or the language in which most lines of code have been written,” the company wrote on its Web site.

The company has published its search criteria on its Web site.

Java, which TIOBE crowned Programming Language of the Year for 2015, lost a bit of ground this month, dropping 1.65 percent to earn a rating of 18.755 percent, though it has held the top spot since April. Among the top five languages in the index, C had the sharpest drop: down 7.94 percent to 9.203 percent.

 

Credits: Dzone

Credits: Dzone

 

I have recorded a three-episode video course about RESTful web services (as in Hypermedia/HATEOAS) together with Java.

The motivation was that, especially in the Java enterprise field, there is quite a bit confusion about the term REST, and APIs are sometimes too tedious to use. Workshops are meant to be “hands-on” with the real-world usage, not just academic theories.

The first episode will cover different levels of HTTP APIs, what the motivations for REST and Hypermedia are and when to use which approach in real-life projects.

The second and third episodes cover the actual implementation with Java and Java EE, on both the server and the client side with different maturity levels.

I hope you will enjoy this video course, thanks for watching!

The first episode is already online, the remaining ones will follow during the week.

Credits: Computerworld

Credits: Computerworld

 

Melding Java and JavaScript, PurpleJS is emerging as a framework for running lightweight JavaScript server applications without the complexity of the Node.js asynchronous programming model.

Atop the JVM (Java Virtual Machine), open source PurpleJS can be used when developers want to build multithreaded applications in JavaScript. It allows developers to run the same code in the browser and on the server, and it enables them to employ JavaScript while working with existing Java projects.

“PurpleJS is a simple and capable framework for creating performant web applications without leaving JavaScript,” main developer Sten Roger Sandvik said. “It’s created in Java to give the flexibility and performance Java provides.”

But PurpleJS is not a replacement for Node.js, the popular server-side JavaScript platform, he stressed. “It’s a totally different model since we, for now, do not use async. This fit our needs and was much simpler to program for our initial users.” PurpleJS will support the async programming approach in the future, though.

 Applications are built using the Gradle build system, and the Java SDK. Java serves as the runtime, but coding is done in JavaScript. Developers also can use PurpleJS Boot, a server running the Jetty HTTP server. “It’s very easy to develop in ‘dev’ mode and you will not need to restart the server as long as you stick with JavaScript coding,” Sandvik said.

The APIs in PurpleScript are starting to become more stable, but the framework needs work, Sandvik cautioned. “Application configuration is one thing that’s missing now and should be in place before 1.0. Also, more libraries are needed — SQL, MongoDB, Influx, Freemarker and Velocity to name a few.” He’s also in the process of implementing support for CLIs made with PurpleJS.

Sandvik works at Enonic, which offers its Enonic XP Web Operating System. PurpleJS currently is a separate project from Enonic but it features code donated by Enonic; Sandvik is hopeful PurpleJS one day could be featured as part of Enonic’s platform.

These and many other interesting insights are from the 2017 Technology & IT Salary Guide published by Robert Half recently.  You can download a copy here (36 pp., PDF, free, opt-in) and also view selected infographics, regional trends and use the salary calculator. This year’s guide provides salary ranges for more than 75 positions in the technology field. Salary data is based on interviews with Robert Half North American recruiting and staffing professionals who make thousands of placements each year. The projected salaries for each position reflect base pay only. Bonuses, incentives and other forms of compensation are not taken into account.

The following graphic illustrates the top 10 technology jobs to watch for in 2017:

top-10-technology-jobs-of-2017

Additional key takeaways include the following:

  • .NET Developers are in predicted to be in high demand across eight of nine U.S. regions.  Additional positions predicted to be in high demand include Web Development and Software Engineering. The following graphic breaks out predictions of the five most in-demand positions by region in 2017.

tech-positions-by-demand

  • Healthcare and Financial Services are predicted to be the leading industries driving high-tech job growth in 2017.  The Robert Half study cites  the U.S. Department of Labor’s Bureau of Labor Statistics finding that technology roles within the healthcare industry are expected to be one of the fastest-growing occupational groups from 2014 to 2024.

fastest-growing-industries-for-jobs-in-2017

  • Security, Web Development and Software Development will see the highest salary growth in 2017.  Tech positions in security will see an average of 5.2% increase in salaries in 2017, followed by Web Development (4.9%), Software Development (4.5%), Data/Database Administration (4.0%) and networking/telecommunications (3.8%).

tech-specialities

Credits: Betanews

Credits: Betanews

 

Students of all ages have always been encouraged (and even required) to learn multiple languages. But these days it’s not French or Latin that has the big impact. Forget accents and umlauts, many of the best and brightest students, business leaders and employers are taking the time to learn about tags, brackets, and commands — that is, they are learning programming languages.

Today, 21st century business is founded on software and there is scarcely a brand on the planet that isn’t looking into how it can be transformed through data. To put it simply, the quality and performance of your software — be it a web application, e-commerce platform or mobile app — must be spot on or your customers will look elsewhere.

No-one can be completely sure of the real cost of defective software, but in the US alone it is estimated to be over $75bn a year. One particularly dangerous example of failed software happened to Nissan in 2015 — the company had to recall airbags from over 1m cars because a software glitch in the airbag sensor was preventing them from inflating in the event of an impact. There is also the famous case in 1999 when a $125m NASA spacecraft was lost in space because of one simple data conversion error.

Coding Is the New Literacy

Back on Earth, customers today also have far higher expectations than they used to. This pressure, added to the increasing complexity of the application environment, means that software teams today face greater challenges than ever as they race to deliver innovative, quality software and solutions for their business.

Though coding, website development and computer science might seem like something only those dedicated to a career in an IT department need to worry about, the truth is that learning programming languages could well be critical to all job prospects in the near future.

After all, as readers of this site will know, technology is no longer just the domain of the IT professional. As more work is done by machines, the job of the modern professional increasingly is to manage those machines. As Quincy Larson puts it, “Coding isn’t some niche skill. It really is ‘the new literacy'”.

The growth of different programming languages shows that the world of technology is increasingly polyglot. This potentially creates a dilemma on what programming language to learn and which skills to hire for — but there really is no one right answer. Learning to code enables individuals, teams and businesses to potentially solve problems, and is a very powerful tool when coupled with critical-thinking skills.

Most experienced programmers didn’t necessarily make a conscious decision to learn a particular language or specialize — they usually learn what is taught in school, and then specialize in a language or framework as they begin working (either in a full-time job or on particular projects).

In today’s world however, there are so many options for individuals and companies who have an interest in learning how to code, and you can make a deliberate decision from the start. Even the most talented developer can’t be an expert in every single computer language, so focusing on learning a language that has a lot of value is very important. For business and team leaders, it’s also worth keeping an eye on which languages are currently in vogue and making waves.

Which Programming Languages Are the Most Sought After by Companies?

When looking at job listings on IT recruiting site Dice.com, the “C” languages (C, C++ and C#) have slightly more listings than Java. These two are so close that they frequently compete with each other at the top of the language rankings, with JavaScript a distant third.

This is echoed by analysis of job-finding site Indeed’s 16 million job listings: Java, and the combination of C, C#, C++ were far more regularly requested than JavaScript and PHP.

Which Languages Are Most Popular Among Developers?

What employers want is one thing. What developers are actually doing is another. According to RedMonk’s analysis of the number of repositories devoted to a language (on GitHub and Stack Overflow), JavaScript is the most popular choice, followed by Java, PHP and Python.

Of course, just because a lot of developers are using a language, that doesn’t mean they necessarily like it. Earlier this year, Stack Overflow tried to get at developers’ preferences by asking what languages they most loved. This list was dominated by newer and simpler languages like Mozilla’s Rust, Apple’s Swift, F#, Scala, and Go.

The rise of Go and Swift are particularly impressive, having come from nowhere to emerge as in the top 20 most popular languages according to Redmonk Research. At New Relic, we recently released a Go agent for our APM product, joining the other supported languages of Ruby, Java, .NET, PHP, Python, and Node.js.

Which Language Should I Learn?

Because there is no one perfect language for all projects and problems, you can’t go wrong with learning any of the languages mentioned above. If you want to you play it safe, Java, JavaScript, and the C family are excellent choices, as they have maintained their positions atop the rankings for years, and I don’t see any indication that will change anytime soon. If you want to be more cutting-edge and try to ride a hot trend, you may want to invest in learning Swift or Go.

If you are ready to get started or you’re thinking of helping your IT team up-skill, there are plenty of options. Codecademy and Code.org are two of the most well-known and reputable online learning portals. If you prefer instructor-led live training, Makers Academy and General Assembly are often recommended. And, of course, there’s always the option of a full-fledged computer science degree, if you have the time and inclination.

In the past decade, software has emerged as one of the foremost technical and creative mediums of our time. In the near future, every business leader will need to have a basic understanding of how the disparate languages, platforms and technologies fit together. We communicate with machines is via code and there could well be 50bn connected devices in the world by 2020 — it’s only a matter of when, not if, understanding a programming language will be a requisite for success. Get ahead of the curve and start learning today.

Credits: Toptechnews

Credits: Toptechnews

 

Tech companies that make business software are never going to match the glamour of their consumer counterparts. Facebook’s Mark Zuckerberg is a household name, but many would be hard-pressed to identify the bosses of SAP or Oracle — even if we use their products every day.

For investors, though, dull doesn’t have to be unattractive. As SAP and Microsoft’s results show in the three months to June, the old guard is doing alright despite a generational shift in the way that businesses buy and use technology.

Cloud computing, which uses networks of internet-hosted remote servers to run technology tasks (rather than doing so locally), is forcing SAP, Oracle, Microsoft and others to overhaul products and business models.

It has given birth to fast-growing upstarts such as Salesforce.com, Workday, and Amazon Web Services, which offer less cumbersome subscription-based systems.

SAP and Microsoft began adjusting a while ago. SAP believes its sales of cloud-based software will be bigger than traditional products by 2018. It’s had 13 consecutive quarters of more than 30 per cent growth from cloud services, excluding merger and acquisition effects.

Microsoft sales in its cloud division rose 6.6 per cent to US$6.7 billion in the latest quarter. Revenue from Azure, the Microsoft platform that sells data-center computing power and services, has doubled in two consecutive quarters.

Nomura estimates that the cloud will account for about 30 per cent of Microsoft sales by mid to late 2018 from just 5 per cent in early 2015. Chief executive Satya Nadella (recognize him?) deserves credit for starting to fix Microsoft after predecessor Steve Ballmer’s missteps, including the value-destroying buy of Nokia’s mobile phone business.

Of course, it’s early days in the cloud era. The old guard must still prove they can cut costs to protect margins, while being nimble enough to ward off those new rivals. Cloud services, sold by subscription, are often less profitable than on-premises software.

For SAP, the shift doesn’t mean it can ignore traditional products entirely. Investors are closely tracking adoption of its new S/4 Hana suite, a set of products sold mostly to big companies.

Growth-obsessed investors favor Salesforce and its upstart kin since they were created exclusively to provide cloud computing services. Salesforce trades on 72 times expected earnings over the next 12 months, showing the faith people have in that growth. Yet while sales have quadrupled in five years to hit almost US$7b, it didn’t make a profit over the period. Nor does it pay dividends. Boring old SAP, Microsoft and Oracle do. That’s a bonus in a low-interest rate world where yield is scarce. It might be time to brush up on those names.

Credits: Sdtimes

Credits: Sdtimes

 

Society often has a misconception on what AI really is and what it can do thanks to movies like “The Terminator” and “Wall-E.” Facebook wants to change that perception with a series of educational videos designed to make artificial intelligence easier to understand.

“AI is going to bring major shifts in society through developments in self-driving cars, medical image analysis, better medical diagnosis, and personalized medicine,” wrote Facebook AI researchers Yann LeCun and Joaquin Quiñonero Candela in a blog post. “And it will also be the backbone of many of the most innovative apps and services of tomorrow. But for many it remains mysterious.”

According to the company, AI falls into three types of learning: reinforcement learning, supervised learning, and predictive learning.

PHP releases 7.1.0
PHP has released the first point version of the 7.x series.

New features include nullable types, which is common in programming languages that allow a variable to be of some type or null. Other features include void return type, iterable pseudo-type, class constant visibility modifiers, and other changes that can be reviewed here.

Besides this point release, PHP also announced its 2017 conference is now open for PHP developers.

Software AG acquires Zementis
Software AG has acquired deep learning and artificial intelligence company Zementis so it can move forward with the next generation of Internet of Things applications, like self-driving cars and digital assistants.

Software AG already embedded Zementis’ ADAPA technology into its Digital Business Platform, and together, the combination of technologies will deliver business and technical insights that will help customers determine behavior, security risks, and sensor information from IoT devices, according to an announcement from Software AG.

“The impact of the Internet of Things on industry, business and society will dwarf anything we have experienced through technology so far,” said Software AG CEO Karl-Heinz Streibich. “This is now widely acknowledged by industry, as is the unique business insights that can be provided by combining predictive analytics, machine learning and streaming analytics.”