Credits: GSenkow

Credits: GSenkow

 

The PHP 7 line, which debuted a year ago, has received its first point release upgrade, improving performance and featuring nullable types.

Version 7.1.0 also offers capabilities like a void return type and class constant visibility modifiers. But a key PHP advocate stressed performance. The upgrade “[provides] up to 35 percent better performance in CPU-intensive workloads,” said Zeev Suraski, CTO at PHP tools producer Zend.

Nullable types in 7.1 allows a check type to be of some type or null. “Type declarations for parameters and return values can now be marked as nullable by prefixing the type name with a question mark. This signifies that as well as the specified type, null can be passed as an argument, or returned as a value, respectively,” documentation states.

Version 7.1 also supports class constant visibility to mirror the behavior of method and property visibility. “Class constant may be defined as public, private or protected. class constants declared without any explicit visibility keyword are defined as public,” according to the proposal.

A “void” return type in PHP 7.1 makes it clear that a function performs an action rather than producing a result. An iterable pseudo-type, meanwhile, can be used as a parameter type to indicate that a function requires a set of values while not caring about the form of the value set. “This type is analogous to callable, accepting multiple types instead of one single type,” documentation states.

PHP 7.2 is slated to introduce an Argon2 password hash. “Argon2 addresses several key downsides of existing algorithms in that it is designed for the highest memory filling rate, and effective use multiple computing units while still providing defense against tradeoff attacks,” the documentation states.

Credits: dzone

Credits: dzone

 

To gather insights on the state of cloud development and deployment today, we spoke with 15 executives from 13 companies that develop tools and services for companies to develop in, and deploy to, the cloud.

We spoke to:

  • Nishant Patel, CTO, and Gaurav Purandare, Senior DevOps Engineer, Built.io
  • Sacha Labourey, CEO and Founder, CloudBees
  • Jeff Williams, co-founder and CTO, Contrast Security
  • Samer Fallouh, V.P. Engineering, and Andrew Turner, Senior Engineer, Dialexa
  • Anders Wallgren, CTO, Electric Cloud
  • Jack Norris, S.V.P. Data and Applications, MapR
  • Michael Elliott, Cloud Evangelist, NetApp
  • Faisal Memon, Technical Product Marketing, NGINX
  • Seth Proctor, CTO, NuoDB
  • Pedro Verruma, CEO, rethumb
  • Pete Chadwick, Director of Cloud Product Management, SUSE
  • Nick Kephart, Senior Director Product Marketing, Thousand Eyes
  • Dmitry Sotnikov, V.P. of Cloud, WSO2

Here’s what they told us when we asked, “What software do you use most often to developing in, and deploying to, the cloud?”

  • We use a variety of tools and processes to build and deploy software to the cloud. Our development teams use Java, .NET, Node.js, Ruby, and Python environments. We use Maven and Jenkins to build software, and Git to manage our source code repositories. We manage our development work with JIRA and other tools. For deployment, we use Ansible for deployment and Lambda for certain jobs.
  • Standard C++, Java, Python; tools like the Atlassian suite for build management; AWS for dev testing theirs and our own; Chef, Ansible, and log monitoring.
  • .NET, Node.js. Deploy to AWS with Docker. Use AWS to host and implement the deployment pipeline. We also use Circle CI for deployment.
  • Our product helps clients go through the digital transformation. A fluid digital system that can be treated as a LEGO set.
  • We mainly use Docker, to create ready-to-deploy images and to allow easy updates to our running applications. These images contain NGINX servers, Node.js, PHP, and other such software.
  • Our products help clients automate efficient CD in the cloud.
  • Enables big data apps using Hadoop, Spark, and more to serve business-critical needs.
  • Commercial front end load balancer using J2EE, JBoss, WebLogic. On the backend with APIs, PHP, and Node.js.
  • Software application development of online code with JIRA and Atlassian. Support from Service Now, Zendesk, and Salesforce. Financial/ERP from Zuora for subscription billing. Operations from DataDog. Incident management from Pager Duty and Xmatters.
  • Git, Chef, Jenkins, Docker, ServiceNow, AWS, and many others.
  • Our strategic partners include AWS, Cisco, Dell, Fujitsu, Hitachi, HPE, IBM, Intel, Lenovo, Microsoft, SAP, sgi, and VMware.
  • It’s all over the place. It used to be an app with a database to move to the cloud. We’ve used Apache, NGINX, and PHP. Now we use Docker images, Ansible to set up server images, Chef for deployment, Jenkins, and MongoDB. Node.js is in the stack for applications and we use Redis to boost application performance.
  • ONTAP 9 and ONTAP Cloud offer scale, management, automation and application integration to simplify storage operations on-premises and across clouds. StorageGRID Webscale offers a storage infrastructure for cloud applications built for AWS S3, with policy-based data placement across datacenters and storage tiers at cloud speed. AltaVault offers secure remote backups as well as cross-site backups/archives with StorageGRID Webscale. SolidFire offers cloud-scale storage for large virtualized environments (not in payload, but fits story). OnCommand Insight provides insights into cloud workloads across on-premises/cloud-inspired, hybrid, and public environments.

Credits: Thinkstock

Credits: Thinkstock

 

PHP users are slowly but surely migrating over to PHP 7, the upgrade to the server-side web development language that came out a year ago. But issues like incompatibility and IT user policy restrictions are stalling their progress.

A recent survey of nearly 1,300 PHP users taken by PHP tools producer Zend found that nearly 20 percent had already made the move, 21 percent were in progress, 15 percent planned to move in the next six months, and 17 percent planned to move in less than one year.

 The survey also found, unsurprisingly, that about 93 percent of users were deploying PHP for web applications. It’s also being used for services or APIs (63 percent), CMS software (48), internal business applications (46 percent), e-commerce (35 percent), and as a back end for mobile apps (34.35).

Respondents encountered few issues when deploying PHP applications into production, with 25 percent saying they almost never had problems and about 42 percent saying they had problems fewer than one-quarter of the time. About 9 percent said they had problems with almost every deployment or with more than half of deployments.

The survey asked about the problem resolution and maintenance vs. developing new functionalities equation, and it found imbalances in both directions. Slightly less than 35 percent of respondents said they spent three-quarters of their time on new functionality and the rest fixing problems, and almost 26 percent spent the vast majority of their time on new functionality. For about 25 percent, the breakdown was half and half.

Zend also inquired about the frequency of code deployments. Nearly 32 percent deploy several times a week, while 14 percent deploy several times per day. Slightly more than 21 percent deploy weekly, and 27 percent opt for one to three times a month for deployments. Just 6.26 percent deploy one to three times a year.

PHP 7 was unveiled to much fanfare, pledging lower memory usage and dramatic improvements in real-world performance. PHP 7.1 recently made its debut, also featuring speed and programming improvements. The survey was conducted from September 13 to October 1; results were released to InfoWorld yesterday.

Credits: Yourstory

Credits: Yourstory

 

Here we have enlisted various benefits of PHP language over others.

1. Easy to learn: PHP is one of the easiest scripting languages. Developers can pick and grasp this language very easily.

2. Online support: PHP is one of the popular languages and hence finding help and support online is quite easy. There are PDFs, forums, social media, and blogs. And the best part is most of the support is for free of cost.

3. Liberty stays: PHP gives you more liberty as compared to other languages. It can be run on various operating systems so this is quite easily operable.

4. Integrate: The language can actually be integrated in many web applications.

5. Framework: The number of frameworks that are available at large is proving that the PHP development community is strong than others.

6. Fixing problems: It is very easy to solve problems in PHP as they are available with other languages.

7. Object oriented: PHP can call Java as well as Windows COM things. Furthermore, people can create custom classes with PHP.

8. Speed: This language works much faster than other scripting languages.

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.