Posts Tagged ‘development’
The infrastructure-as-a-service (IaaS) market has exploded in recent years. Google stepped into the fold of IaaS providers, somewhat under the radar. The Google Cloud Platform is a group of cloud computing tools for developers to build and host web applications.
It started with services such as the Google App Engine and quickly evolved to include many other tools and services. While the Google Cloud Platform was initially met with criticism of its lack of support for some key programming languages, it has added new features and support that make it a contender in the space.
Here’s what you need to know about the Google Cloud Platform.
Google recently shifted its pricing model to include sustained-use discounts and per-minute billing. Billings starts with a 10-minute minimum and bills per minute for the following time. Sustained-use discounts begin after a particular instance is used for more than 25% of a month. Users receive a discount for each incremental minute used after they reach the 25% mark.
2. Cloud Debugger
The Cloud Debugger gives developers the option to assess and debug code in production. Developers can set a watchpoint on a line of code, and any time a server request hits that line of code, they will get all of the variables and parameters of that code. According to Google blog post, there is no overhead to run it and “when a watchpoint is hit very little noticeable performance impact is seen by your users.”
3. Cloud Trace
Cloud Trace lets you quickly figure out what is causing a performance bottleneck and fix it. The base value add is that it shows you how much time your product is spending processing certain requests. Users can also get a report that compares performances across releases.
4. Cloud Save
The Cloud Save API was announced at the 2014 Google I/O developers conference by Greg DeMichillie, the director of product management on the Google Cloud Platform. Cloud Save is a feature that lets you “save and retrieve per user information.” It also allows cloud-stored data to be synchronized across devices.
The Cloud Platform offers two hosting options: the App Engine, which is their Platform-as-a-Service and Compute Engine as an Infrastructure-as-a-Service. In the standard App Engine hosting environment, Google manages all of the components outside of your application code.
The Cloud Platform also offers managed VM environments that blend the auto-management of App Engine, with the flexibility of Compute Engine VMs.The managed VM environment also gives users the ability to add third-party frameworks and libraries to their applications.
Google Cloud Platform networking tools and services are all based on Andromeda, Google’s network virtualization stack. Having access to the full stack allows Google to create end-to-end solutions without compromising functionality based on available insertion points or existing software.
According to a Google blog post, “Andromeda is a Software Defined Networking (SDN)-based substrate for our network virtualization efforts. It is the orchestration point for provisioning, configuring, and managing virtual networks and in-network packet processing.”
Containers are especially useful in a PaaS situation because they assist in speeding deployment and scaling apps. For those looking for container management in regards to virtualization on the Cloud Platform, Google offers its open source container scheduler known as Kubernetes. Think of it as a Container-as-a-Service solution, providing management for Docker containers.
8. Big Data
The Google Cloud Platform offers a full big data solution, but there are two unique tools for big data processing and analysis on Google Cloud Platform. First, BigQuery allows users to run SQL-like queries on terabytes of data. Plus, you can load your data in bulk directly from your Google Cloud Storage.
The second tool is Google Cloud Dataflow. Also announced at I/O, Google Cloud Dataflow allows you to create, monitor, and glean insights from a data processing pipeline. It evolved from Google’s MapReduce.
Google does routine testing and regularly send patches, but it also sets all virtual machines to live migrate away from maintenance as it is being performed.
“Compute Engine automatically migrates your running instance. The migration process will impact guest performance to some degree but your instance remains online throughout the migration process. The exact guest performance impact and duration depend on many factors, but it is expected most applications and workloads will not notice,” the Google developer website said.
VMs can also be set to shut down cleanly and reopen away from the maintenance event.
10. Load balancing
In June, Google announced the Cloud Platform HTTP Load Balancing to balance the traffic of multiple compute instances across different geographic regions.
“It uses network proximity and backend capacity information to optimize the path between your users and your instances, and improves latency by connecting users to the closest Cloud Platform location. If your instances in one region are under heavy load or become unreachable, HTTP load balancing intelligently directs new requests to your available instances in a nearby region,” a Google blog post said.
Taken from TechRepublic
Skype ID: lina_deveikyte
Marketing Manager (LI page)
Altabel Group – Professional Software Development
With the growing popularity of smartphones, tablets and other mobile devices the living has become more comfortable. The different types of apps help us to wake up in time, to entertain reading books, booking tickets, listening to favorite music and just chat with friends without extra expenses. Among the challenges in mobile app market stands also the developing of effective web browsing solutions.
In this article I would like to take a look at DHTMLX Touch framework that helps to create nice-looking and easy-to-use mobile web apps oriented to touchscreen devices.
Let’s see what the characteristics of DHTMLX Touch are:
-compatible with the main web browsers for mobile platforms that support HTML5;
-free under both GNU GPL and commercial Licenses;
-lots of technical samples with the source code that simplify studying how the UI elements work;
– expanded builder tools:
• Skin Builder – an online tool that allows you to build mobile web apps through a user-friendly, drag-and-drop interface. Since v.1.2, you can save your design or share it by sending an URL.
• Visual Designer - a simple online tool that provides an easy way to choose the skin for you app and customize the skin colors. A set of predefined skins is included.
-server side is based on the on dhtmlxConnectors (the same that used for DHTMLX Ajax library) that simplifies client –server communication;
– simplified scheme of CSS editing.
The current version of DHTMLX Touch framework took a long way from the release of its first components dhtmlxTree and dhtmlxGrid in 2005-2006 to become a complete tool that covers the most required aspects of modern application interface. Three months ago in September, 2012 was presented the updated version 1.2. And now we will see what are the new features and improvements were added:
* Bug fixing – more stable and faster performance, better compatibility with the latest iOS and Android platforms;
* Updated visual designer tool: new Unitlist component, new charts, and the ability to share and save your design;
* Auto-complete for IDEs: Microsoft Visual Studio, PHPStorm, WebStorm, NetBeans, Aptana Studio, Eclipse, and others
* Multiple fixes in form validation logic
* Better memory management: automatic destructors clean up the memory, which helps to prevent memory leaks if the app has a complicated inheritance structure
* Better support of full-screen mode
Many companies around the world make the preference towards DHTMLX saying that it’s very simple, flexible and easy-to-use with a live support forum.
If you have already an experience working with DHTMLX Touch framework or heard something about using it, feel free to share your thoughts/experience by leaving a comment.
You can also have a look at new features of DHTMLX Touch framework and the samples of apps already implemented following the link to the official website http://dhtmlx.com.
Thank you for your attention.
OutSystems recently released Agile Platform 7.0. The really big news in the announcement was a total overhaul of the multi-tenancy system. Another item that flew under the radar is the new Lifetime feature, which is a method of deploying applications and managing the lifecycle (without any relationship to the TV channel).
In Lifetime, you define a number of environments and which direction things get deployed out. The pre-defined environments are Development, Testing, and Production. Lifetime allows you to “tag” a particular set of revisions with a version number, and then push them to the next environment in the chain. It detects if changes have been made in an environment’s version by marking the version number with a plus (for example, 1.8+), which gives you a cue that you may need to backport changes or deploy from downstream servers with caution. This is great for the age-old issue of people patching directly on upstream servers.
Hand-in-hand with the Lifetime feature is improvements to the way you define Applications and the system for maintaining them. There are a lot of minor changes to Applications that add up to an overall improvement. For example, there is a little reason to use an Application over a Solution, but with Lifetime, the Applications get all of the versioning and single-click deployment of a package and dependencies that Solutions have, with additional awareness of things like which eSpace in the application manages users and roles.
Ideally, you make your changes in Development, and when you are ready to test, you tag them with a new version and push to Testing. Once your testing is complete, you deploy to Production. But, what if you have to hot patch in Production? Well, there are no worries. If you take the patched version from Production and deploy it to Testing or Development, it will show the versions as being in sync again. The worst-case scenario is that you have patched Production and have changes in Development to push out. Going to the Development version and doing a merge from Service Studio with the Production version to backport the patch and then deploying the merged version back to Development will mark everything as up-to-date and happy.
I’ve found that people have a general idea of what SharePoint is, but many have no idea how to apply it to their own business. I’d like to share with you the top ways that SharePoint can solve common business needs. And I want to emphasize that these are only a few of the many ways to utilize the SharePoint Services. Once you start using it, you will begin to realize the many other valuable benefits that can easily be accomplished by the everyday user. Hope you’ll find a few productivity solutions here.
With SharePoint you can:
1. Store all your emails on a secure and centralized Website for easy archive.
2. Keep a central task location for assigning tasks to team members. These tasks will also link to your projects so you can easily find out what tasks are still open for each project.
3. Organize large events and store the related documents, assigned tasks, and generally post anything and everything related to the events. It will also integrate with Outlook for added efficiency.
4. Collaborate with team members on all documents and stay on top of who did what. Earlier versions can easily be restored in case someone has made too many mistakes. Projects can also be linked to related documents.
5. Assign tasks to your team members, and automatically notify them that they have a new task. Alerts are sent when there have been updates to the tasks.
6. Quickly manage all projects for your team or organization so there’s no need to explore buying an expensive project management solution.
7. Use the efficient check-in / check-out management feature to sort your documents.
8. Implement a help ticket resolution for your organization or team without breaking the bank.
9. Start a private company blog to communicate and share ideas with your team that’s viewable only by those you give access to.
10. Gain more control over your company’s documents with the content approval function.
11. Offer training materials to your teams, clients, and/or partners in a password-protected Website that can be accessed anywhere in the world.
12. Offer a secure and private place to share documents and other information with clients and/or partners.
13. Access and work with your data using your Internet-enabled mobile phone for added convenience while traveling or out of the office at client meetings.
14. Create better team communication and brainstorming sessions where everyone can participate when their schedules permit.
15. Centralize where company and team project announcements are posted. Everyone will receive a notification via email or mobile phone automatically, anywhere in the world.
16. Work offline on the files, project tasks, tasks, discussions, contacts, calendars, blogs, etc. and then sync the updated information later on.
17. Create “central” documents (and synchronize), so all team members, clients, and/or partners are able to work on the same document and make changes. Updates are accessible with a click of a button. Everyone can then sync back to the “central” document and have all edits merged into that single document.
18. Easily add custom fields to any area and capture the information that’s most important to your company, all without the help of a web designer or IT person.
19. Pull up and update Microsoft Access database from a local desktop and sync information to a central location that can be accessed from anywhere at any time.
20. Create a project dashboard where on one page you can view and filter on common project elements, such as: project details, project documents, project tasks, project issues, project calendar, project milestones, project lessons learned, project risks, project change orders, and more.
Keep in mind that a little training goes a long way in increasing productivity in the products you use in your business.
Altabel Group highly recommends taking the time to learn this efficient and effective tool and watch your productivity, along with your profits!
What are the most common mistakes that are being made by mobile application developers?
Well, many of them to be honest hardly care what they produce and focus on how financially rewarding the night after it’s being released is, but what they don’t know is that it’s not about how much of a hit it was the night it was released, it’s how much people tend to use it, and the more something is used, the more it is needed, these guys need to make their made apps into needs, not wants, since wants end, needs don’t. One of the main mistakes they make is giving up too early. If you look at the apps that made it big, they’ve often been growing for a year or more, or they’re only the most recent of several apps that have been made by the developer. ‘Overnight success’ can take a long time. The most common mistake is to neglect marketing. A developer cannot merely build and ship a product. He/she also must have a plan to market the apps. Most apps stores are filled, and to succeed you must get noticed. The biggest mistake developers make is focusing on downloads versus usage. Some of them chase trends too much and then app stores end up clogged with similar apps.
The key to designing and building good software is to have a comprehensive understanding of how and where it fits into today’s world. I know it’s a lot to ask developers to also be aware of the business and world requirements. But everybody involved in the chain needs to be able to put themselves into the shoes of the end customers (whatever the target market has been identified to be). Do this objectively and then decide what part of that end users life this app will actually impact (good and bad). Every mobile app needs a story. There is a villain and a hero. The hero must win in the end. Otherwise, who cares?
Smartphone app development is exploding, leaving developers confronted with a plethora of choices. Here are some tips to help you make the most of your mobile apps.
First of all study your application. For this purpose you should ask yourself the following questions:
– Is it a free application?
– Is it a commercial one?
– How do I want it to be distributed?
For free applications, I recommend Android, as it has a very nice marketplace and it’s inexpensive to publish.
For commercial applications, iPhone is the best target. iTunes is a great distribution system, and an average user is more inclined to buy an iPhone app than an Android one.
For a closed business self-distributed application, Windows Mobile is a good choice. Actually for this type, any of the three platforms are good.
Once you get to know your applications target and distribution system, you should think about your knowledge/resources:
– What do I know to program?
– What does my programming team know?
And finally, once you know your target language, you must check if the selected platform meets your software/hardware requirements:
– What type of hardware peripherals do I need?
– Which processor do I need? And so on.
Android and Windows Mobile have quite a wide range of devices, while iPhone only three. If you want to ensure the correct development of your app without caring for the hardware, iPhone is the best choice; all models are nearly the same. But if the iPhone hardware doesn’t have what you need you can do nothing about it. In this case a platform like Windows Mobile can be better.
So much depends on your application. All the application types have distinct hardware/software requirements, so you should study them well before taking a decision.
If you have answered all those questions above and have a clear vision of an app you wish to have, then the platform which answers your wishes to the fullest extent, is the best for your app.
Altabel Group specialists are currently programming for those three platforms, so from our own experience we can state that each one has its advantages:
On Android the hardware is used easily, the nice Eclipse Java IDE, and the market.
On iPhone, iTunes is the best of all, easy distribution channel to make money (but expensive if you’re targeting for low profile apps).
And Windows Mobile is a more friendly platform for the programmer; it lets you do nearly everything with the hardware/OS.
And what’s your opinion on this topic?