Friday 31 March 2017

21 Free Coding Tools for Developers

Most of the developers prefer ASP.NET MVC5 or AngularJS tools which are not only latest but also quiet efficient when it comes to coding of customised systems. Off late most of the mobile applications are developed on cross platform tools to optimize time and resources.

Though there are various platforms and arena, Java Script and basic C programming are still considered as alphabet of developer language. Sometimes developers go crazy for finding snippets or cheat codes to achieve the requirement. Quite a lot of time is spent on understanding, developing and testing the customer requirement functionalities.

Being a custom software development company, We have discovered some simple tools which can help developers improve thier productivity.

There are lot of free resources available for prototyping, developing, debuging and testing codes 
in the internet. Selecting the right ones from those libraries, frameworks, tools and services can be a bit difficult. So, I have listed 21 resources here of which 3 links are for Ionic framework developers, 4 are for ASP.NET developers, 3 are for HTML5 developers, 4 are for designers and remaining 7 are common point which would be helpful to all developers. 

1.Channel9: Is run by one of the oldest group of developers. The developers and technical enthusiasts within Microsoft who operate this site devoted to including programmers into the conversations.


2.DotnetTricks: A big shout out to all the ASP.NET developers out there, get the best trick for your coding right here. This web page is also a online teacher/instructor for freshers in development arena.

 Dotnet Tricks

3.Code Call: Code call is a community where users can interact with their fellow developers in any developing aspect.

 Code Call

4.Code Guru: This website is a similar to Code call.  Java Script, ASP.NET and android Developers can get solutions to whatever problems they are trying to solve. 

 Code Guru

5.Code Project: Code project is also a multi functioning developer support. This forum is best when utilized in hard situations.

 Code Project

6.Coding Horror: Not only for software developers, Coding Horror provides snippets and sparks for Gaming developers too.

 Coding Horror

7.Experts Exchange: Ask your queries, post your gigs and get answers from industry experts. This is a place where industry experts take active participation in getting the clear and simpler codes for complex requirements.

 Experts Exchange

The next three links are for the code to success of Ionic Framework developers.

8.DevDactic: This blog is maintained by Simon, a passionate developer from Germany. In his blogs and videos, he provides snippets and solutions for Ionic Framework.


9.Gajotres: This blog helps Ionic framework developers to get a quick support from experts. Especially for the jQuery scripts, this is one of useful resource bank.


10.The Jackal of Java script: This blog post is written by Arvind, a freelance trainer and full stack consultant. This blog is a way of giving back to Java Script community, he says. And it is obvious that understanding Java script is made with much ease by the author.

 The Jackal of Java Scripts

The below links are for HTML 5 developers. The first one that comes to my mind for 
HTML/CSS development, is Boot Snipp.

11.Bootsnipp:  When I started learning HTML , I felt much comfortable with this element gallery. For developers working on Bootstrap, this is essential in their craft.


12.GitHub: Be it an open source, a business or any other development code, every element of development is available in this directory.


13. HTML5 Rocks: The name says it all. This blog supports HTML developers to concentrate on designs with simple techniques and ample codes.

 HTML5 Rocks

14.Codepen: This blog deserves to be named as a playground for the front end web. Whatever hurdle you have in UX designing, this page would act as a encylopedia for you.


15.W3Schools: In the development community, it is not an exaggeration to say that every developer starts his day with W3 Schools. It is optimized for learning, testing and training.

 W3 Schools

16.Stack Exchange: is a network of more than 150 communities who join the Q&A sessions for discussing development ideas or solving puzzles.


17. Stack over flow:
Developers trust Stack Overflow to help solve coding problems and even use it to find job opportunities.

 Stack Over Flow

18.Code Drops:
For all the latest trends in development and designing, check out this blog. One of the best recommended blog for tutorials.

 Code Drops

Below three websites are solution for UI designers. Book mark them and dont to forget open these sites for apt icons and colour combinations.

19.Icon Finder:

 Icon FInder

20.Flat Icon:



 Color Combos

Although this is not a comphrehensive list of tools available out there, I am sure they provide a good starting point for budding and struggling developers.  Read this if you would like to know about the tools for developing HTML5 code.

NagaTeja Rupavataram
Technical Writer
 +65 62689551

Thursday 30 March 2017

Cost Cutting in Custom Software – 3 : Prevention trumps Cure

Welcome to yet another post on the cost cutting in custom software development outsourcing. If you are new to this series, please check out the part 1 here and part 2 here. This series builds on itself and you would be able to appreciate more of what I am going to talk about today. With that note let us get into out topic of the day “Prevention trumps Cure”.

Software development has come a long way since SDLC. Development teams are getting smaller and project cycles are getting shorter with Agile development methodologies & other practices such as scrum. However according to Gartner researcher Theresa Lanowitz, agile software project teams reported a surge in project cost from $3.2 million to $3.4 million in the span of last 4 years.  Now that does not add right as project team and time is getting shorter i.e. the two important resources needed for the development.

The answer lies further in her research as well as in the interesting article written by Robert Charette here in why software fails. It is noted that developers spend 50% of their precious time in rework, which are avoidable in the first place. Now, if you are a seasoned project manager or have done software development outsourcing before, you would know that cost of fixing after go live as compared to development can be 100 times higher.
Solution: Prevention is always better than cure

Reworks and Defects are the most contributing factors to software failures and they drive up the cost originally intended for the project.  While the quality of the vendor who deliver the software does matter, it always comes down to a simple and most important document: The Requirement specs. Write and document all those nitty gritty details of the project, do not leave anything to common understanding or assumptions.  What is common for your business may not be common for the vendor or his developers who will be coding your project.

Functional Requirements should be stated clearly and they form the bible for both business and developers.  This would help us to check the features of each module delivered, thus avoiding reworks in the finished product.

Non-Functional Requirements to some extend could be avoided using documentation and well written test cases. However, it all depends on not what the software deliver but how well it delivers. This usually depends on how well the vendor understands your business and the quality of the coding that goes into the development.

I think by now; you understand that cost cutting in custom software development does not always depends solely on the initial project cost. Thanks for dropping by and stay tuned for few more posts on this series. Alternatively, you can head over here to read on the same subject. Have a fantastic day! 

   Srivatsan Aravamudan
   Telephone:+65 62689551
   Fax:+65 62689858
   Business Analyst - Snr Software Consultant.


Wednesday 29 March 2017

Google Oreo - Twist, Lick & Dunk for Android

Google has been adopting the names of food items as the names of their android OS. After Gingerbread, Ice Cream sandwich, KitKat, Lollipop, Marshmallow and Nougat, now it is time for OREO.

Since the first launch in 2008, Android has flourished on unbelievable feedback from the vivacious ecosystems of app developers and device makers, as well as of course our users. More recently, Google have been pushing hard on improving and now came up with new OS – Android O.

Android O introduces several new features and APIs to use in your apps. Here's are just a few new things, the twists, licks and dunks for you to start trying in this first Developer Preview.

First the Twists

Background Limits: Android O puts a big priority on improving a user's battery life and the device's interactive performance. To manage this feature efficiently, Android O has specified some additional limits on background running of the apps. They are implicit broadcasts, background services and location updates.

Notification Channels: This is a new app defined category for notification content. These notification channels let the developers give absolute control over various types of notifications. For instance, user can block or change the behavior of each channel individually. Also, new view is developed to notifications to make it easy for users to see notifications.

Then the Licks

Auto-fill APIs: Users can select the auto-fill app just like the way they select keyboard app. This auto-fill app stores the secured user data. For apps that want to handle auto-fill, Android O is providing new APIs to implement an auto-fill service.

Picture in Picture (PIP): To enable users to continue watching a video while they are using another application, android O is enabling a new feature. User can specify the aspect ratio for PiP. Also, user can also specify the interactions such as play and pause. Along with this, new feature of app overlay window supports the user to use instead of system alert window.

Font resources in XML: Fonts are now a fully supported resource type in android O. Developers can utilize the XML layouts as well as define font families for the apps in XML. This helps in declaring the font style and weight along with the font files.

Now for the Dunks

Adaptive Icons: Enabling a better integration with the UI device, developer can create adaptive icons that are available in different styles. This allows the system to animate the interactions with the icons in launchers, shortcuts and overview screens.

Connectivity: To support the developer with the ultimate audio fidelity, Android O now supports LDAC codec (A high quality audio codec from Sony).
The telecom framework is also extending the connection service APIs to enable third party calling apps to integrate with the system UI.

Keyboard Navigation: Android O is focused on building a more reliable, predictable model for arrow and tab navigation that helps both developers and end users.

There are many more advanced features to come in the next releases of Android O. As of now Android O has now released the initial preview for developers only. Developers can download Android O here.

The O Developer Preview includes an updated SDK with system images for testing on the official Android Emulator and on Nexus 5X, Nexus 6P, Nexus Player, Pixel, Pixel XL and Pixel C devices. If you're building for wearable, there's also an emulator for testing Android Wear 2.0 on Android O.

Android O concludes some of the work started in Nougat and further braces the nature of control in android. The first developer preview is typically one that is most feature-rich, with only a few notable additions in subsequent previews. It is very clear that most changes in Android O has in store are of the background variety.  All things said, I guess indian sweets would never make it to the list. Thats a bummer cause I think Google Gulab Jamon would totally work.

NagaTeja Rupavataram
Technical Writer
 +65 62689551

Tuesday 28 March 2017

Cutting Cost in Custom Software – 2: The Flash Effect

Welcome to the custom software cost cutting series part 2, If you have not read the previous post please click here and read that first. That might provide you a clear understanding and you would be able to appreciate the continuity of this post. Now let us begin with today’s topic – The Flash Effect.

Custom Software Projects usually begin when the management feels it is necessary to invest in a software that might:

a) Increase productivity or
b) solve an existing problem.

However, the actual necessity of this project to the end user might have originated several months before this. Thus, there would be huge pressure in developing and implementing this software within a short time, aka Flash through it. If only I had a dollar for every time the customer said, "we wanted this yesterday”. Looks like a familiar scenario? Now let’s look at the implications of this.

Time is Money and someone is going to pay for this loss of time or rather shortage of time to develop the application. The management would essentially put pressure on the vendor to deliver the software in a short deadline, which is usually not realistic. The vendor who would now need more than the intended resources to complete the project, would quote based on the necessity.
Let us look at the chart for fast, cheap and good we had seen yesterday here. Desperate customers, who want the project to go live in very short time increase the budget as much as 50% as the vendor needs to spend twice the amount of resources to code and test within that time.


Have realistic deadline when it comes to custom software development. A qualified vendor is going to work with you to understand your requirements, document them, make prototypes, accept confirmations, develop the actual system, do internal testing then help you to do user acceptance testing, then make amendments before going live. This is very organic process, and even with agile methodology and sprints this is going to take a decent amount of time, which would vary as per your size of the project.

It is much faster to provide enough time to develop and properly test, rather than go live and fix innumerable bugs one after another due to poor testing. This very true because the vendor might not have enough time to finish coding your project and ultimately would cut off time in testing process to deliver on time.
That is all for today, and I am glad you took another step towards cutting down cost of your next custom software development project. Thanks for stopping by and be sure to come back for another interesting tip on the same topic. Alternatively, you can look here and here for other articles on custom software development cost.

Thanks for dropping by and have a fantastic day!

   Srivatsan Aravamudan
   Telephone:+65 62689551
   Fax:+65 62689858
   Business Analyst - Snr Software Consultant.


Monday 27 March 2017

Cost Cutting in Custom Software – 1 : Blog Series

There is no doubt that custom software is more powerful and aligned to your business than off-the-shelf products. Perhaps it would even offer higher productivity and innovation to the way you operate.  However not many opine custom software due to the cost factor.  Custom software as compared to Off-the-shelf or packaged software tend to be on the higher side of the investment. Given the need of the hour we often look at the ways to keep the cost low without compromising on the ability to achieve innovation and progress. So, this post is especially for those SME or Corporations on cost cutting mode, who are looking for custom software solutions. The below points can act as guide to cost reduction in your next custom software development outsourcing.

1.The Trap - Effort Vs Fixed costs
Often companies looking for custom software solutions, tend to make decisions based on fixed costs i.e x amount in development and delivery of a project. Most often fixed costs are derived from per man day or man hour costs and usually attributes to efforts involved. Therefore, vendors would quote you based on modules you need. Sometimes you might lose precious requirements out of the deal to keep the cost low. But, costs are only one side of the coin, and you must consider the other side i.e efforts.
The vendor charging you 20% less on a project still would need 40% more time to accomplish it and without the quality that’s needed for the project. So, you might still end up paying for it either in time or in quality or in both.


Identify a qualified vendor who can provide you a clear man hour cost break up. This can help you gauge the efforts in terms of time and cost.  The estimated hours can serve as rough gauge or relative productivity.

2.Vendor Location

Probably you never thought of location as a factor in cost reduction for custom software projects. Location plays an important role in overhead costs. Especially if the IT vendor is situated in Metropolitan, as higher the cost of living, higher the man hour costs of your project would be.
The cost difference between non-metro pricing to that of metro would be in the range of 30% to 50%. However, if you choose to outsource to any developing country or city far from your vicinity, you would have less control over delivery.


Choose a vendor who has offices in developing country, or non -metro city. Chances are they are outsourcing the work internally to provide you the best cost model. And viola, you can have the convenience of someone at the proximity with lowered cost.

3.Clear Requirements – Accurate Estimates

I cannot stress this enough, often the cost is influenced by the ambiguities of a project. If you have unknown elements that you are hoping to figure out on the go after outsourcing, be ready to pay upfront hiked up costs.  Talking from vendor perspective, they would rather charge you more for the grey areas in your requirements, as you may not want to pay extra charges after the project cost is agreed.  

Your inaccuracy can translate into assumptions from the vendors increasing the proposed costs to 30% or more.


Had you done your requirements document right, you would have ended up in clear summary of tasks for each module, kinds of users and their roles, the inputs and outputs for each module and how it contributes to the objective of the overall project.  If you are in doubt as your vendor for any requirement document format. Chances are they might have done this several times and would have developed a clear template for documenting the requirements accurately.

In conclusion, these points might be easy to achieve and can help you with great deal in bringing down your cost.  That’s all I have for today, stay tuned to our blog posts to read more posts on this series.  Alternatively, you may sign uphere to receive newsletters, or read more on this subject here. Thanks for dropping by and have a fantastic day!

Srivatsan Aravamudan
Telephone:+65 62689551
Fax:+65 62689858
Business Analyst - Snr Software Consultant.

Wednesday 22 March 2017

Risking it all ~ Data breach in Development & Testing

In the last 18 months, we are seeing more and more security breaches and even giants like Yahoo, Facebook, Target are not spared. Yahoo declared 2 security breaches to public, including the biggest known data breach in history. Major US retailer Target announced a massive breach of its point-of-sale terminals in early December of last year. In November of last year, hackers stole passwords and usernames for almost two million accounts across several social networks such as Facebook, Gmail, YouTube etc.

If 2016 has taught us anything, it’s the damage software security can cause to the company. And it’s not just the reputation of the company that suffers, Last year alone, the experts measured several billions of dollars because of security breaches to data and software.

While simple methods such as changing the password regularly, or using two factor authentications or encryption can help to scrutinize security. It is often not enough to defend the threats which are getting much stronger than known preventative measures.

One possible solution could be found at the development stage of the software application. Hackers look for development and test environments, which are not often in the organisations strongest layer of security. In several cases test data, has been shared with disparate or even outsourced teams, making the sensitive information vulnerable. The following are the list of neutralising actions which are suitable especially to those who outsource software development to their technical consultants.

Data protection during development, testing and roll-out.

1. No production data should be used for testing, if there is a need to use production data then it should be scrubbed or masked.

2. Deploy data virtualisation with scrubbed or masked data so the data provided to the team are consistent data snapshots, reducing the overall footprints of the production data.

3. Have comprehensive set of protocols and validation procedures while accessing / updating production data during testing or rollout.

4. Direct access to data should be restricted to handful of trusted individuals and accessible via only multi-factor authentication.

5. Development and testing should always be done on server which are isolated from internet.

6. These servers should never connect to production environment servers or desktops.

7. Web applications, website data, code files and scripts should always be on separate partition or drive from that of database, OS or system files.

8. When necessary use audit trial for test activities with risk assessment report. This should be regularly monitored by risk mitigation experts in the organisation. This should be form of regulatory compliance and control, as it would provide valuable information while back tracking any incidents.

9. If development teams are geographically separated from production, then organisation must exercise even greater control and caution while transferring data between the teams. A combination of remote access, encryption and authentications can help to overcome majority of threats.

While these are only few starting points on this topic, organisations must accept responsibility for comprehensive end-to-end security across delivery pipeline. In case of outsourcing, the IT consultant should adhere and help in creating secured environment to protect valuable customer data. Choosing the right consultant can sometimes be the best first step towards safer data practices.

Srivatsan Aravamudan
Telephone:+65 62689551
Fax:+65 62689858
Business Analyst - Snr Software Consultant.
Related Posts Plugin for WordPress, Blogger...

Share Buttons