Top 5 PHP Programming Habits

In its early days, PHP programming was largely limited to being highly procedural. There were certain building blocks to every applications and these ‘procedures’ offered a degree of reusability by being called by other applications. However, a programmer can still introduce the OO characteristics without the constructs of object oriented language, into the codes. While the process if a tad bit difficult, the ability to be able to build relationships between interfaces and classes makes it easier to come up with codes that are governed by good OO practices.

Here are top 5 PHP coding habits that every programmer is expected to follow:

1.     Being a good neighbor

Classes should be able to handle errors self-sufficiently. Consequently, you should package them in a format that is easily understood by the caller. Further, it is better to avoid any returning object in a state of null or invalidity. This can simply be taken care of by throwing specific exceptions and verifying arguments to prove the invalidity of supplied arguments. This habit can save you from wasting a lot of time.

2.     Avoiding the Medusa!

Beginners in PHP are always confused about the importance of interfaces. However, experts and seasoned professionals suggest that not using interfaces would be like looking into the eyes of the Medusa. In mythology, any person who would look into the eyes of Medusa, a Greek Goddess with snakes for hair would turn into stone! Similarly, with interfaces, using them directly limits your options and your classes are set in stone.

Top 5 PHP Programming Habits

3.     Embracing the weakest links

It’s a good thing when you couple your modules loosely as they allow encapsulating change. The first and third habit mentioned above will also help your work towards modules that are coupled loosely. However, to loosely couple your classes, you should develop the final characteristics by lowering dependencies of classes – make this a habit. When trying to build OO designs, it is better to think of concepts like “Separation of Concerns”, wherein programmers try separating objects from classes, thus reducing the coupling.

4.     Being modest

Try not to expose yourself with your functions and class implementations. Hiding information is accepted as a foundational habit and it will get more difficult to build other good habits if you are already into hiding your implementations. Also referred to as encapsulation, exposing public fields makes you run out of options when things change in your implementations. It is better to use OO concepts to isolate the changes and stop them from spreading early on.

5.     Sticking to the family

The greatest disaster in OO programming is the copy-paste operations. Used without an upfront OO design, they can create havoc. Whenever, you are being tempted to use the same lines of codes from one class in another, it is a good habit to stop and consider how the class hierarchy can be leveraged to identical functionality. In most cases, copying codes is totally unnecessary when trying to come up with a good design.

Which programing practices form a part of your internal team checklist? Do leave in your comments and let us know.

Oye Life! events & activities discovery app

Designed by GoodWorkLabs UX Design Studio, Oye Life! is an uber-cool social discovery app for events and activities around you or any city you choose to visit. Our UX and UI experts worked with the entrepreneurs and product owners of Oye Life! from scratch and created a beautiful, easy-to-use and engaging app. The different stages in UX phase included requirement gathering workshops, creating user personas, user research, information architecture, wireframes, visual design concepts, visual design and prototyping.

 

Oye-Life-events-activities-discovery-app-goodworklabs

 

The features for the Android app include –

  • Discover weekend events and activities around you. 
  • Hyper local – browse curated events and activities in your area.
  • Choose activities as per your outing type. Be it camping, trekking, theatre workshops or shopping festivals, you have it all!
  • It’s totally social, see what your friends are up to and where all they have been.
  • Reviews – write reviews about the places and events you have attended!
  • Gamification – the app is wonderfully rewarding and engaging. You score points every time you do any activity and you win cool badges and rewards!
  • Leaderboard – See who is the champ is a particular category in your area and hang out with them!

The long missing Pocket on iOS is finally here

Tired of holding the iPhone in your palms for long, but still cannot miss reading out the rest of the story? Well, Apple has come up with a solution – finally. A new app called Pocket on iOS will read out documents while you can get busy with other household work. The incredible text-to-speech feature is easy to use and can be used with your e-books, emails, messages and any other kind of document received or stored on your iOS device. This feature has actually been available for Android users for as many as three years now. Well, apple does finally answer the same, though a bit late.

Pocket on iOS is an incredible feature for users who would want to have their new hands-free. It even allows you to listen to an article from anywhere in the complete content, skip uninteresting portions and even adjust the reading speed between fast and slow. All the more important is the fact that this will be available in all languages supported by your device!

The long missing Pocket on iOS is finally here

What’s new on Pocket for iOS?

Recently, Pocket was even updated to version 6.0.1 to incorporate new features for iOS 9 users. A notable addition has been Spotlight Search that allows users to find relevant articles from among a queue. The new version also adds support for the Picture-in-Picture mode for the iPad, allowing the user to take notes in the background while watching a video or something in the foreground Pocket app. Here’s what the new version of Pocket presents:

  1. Spotlight Search – using ‘spotlight’ to search for saved URLs and titles and opening them directly in the Article View screen.
  2. Picture in Picture – Allowing non-disrupted video watching while running other apps in the background.
  3. Several bug fixes and other improvements, especially catering to iOS 9 users.

The base version of Pocket is available for free but there’s a premium version that will cost you $4.99 every month. This service will include full text search and a personal backup for suggested tags and saved contents. For users who regularly like to read on their devices, this investment will certainly be worth it.

There are several other aesthetic improvements that have been made to the Pocket 6.0.1 version, presenting a less cluttered and revamped interface. This will also be more suited for devices with Retina Display Technology. The update also adds image and video filters that make reading easier on your eyes, if you care to browse through the pictures along with the spoken content. Users will also be able do bulk editing with the latest Pocket App.

As of today, the Pocket app already has more than 4.5 million users across the globe. Apple in fact says that Pocket (Formerly Read it Later) is among the top paid news app for Kindle, Android and iOS. Since 2007, users have stored more than 200 million pieces. Further, the app can be beneficially integrated with other reading apps like Zite, Pulse, Flipboard and Twitter.

If you have an iOS 5 or later on your Apple device, Pocket would be an extremely advisable addition.

How ‘Smart’ is Getting Smarter with IoT

Information technology has been revolutionizing every aspect of human life today. A complex system of hardware, software, data storage, microprocessor, sensors, and connectivity is taking the world towards a more convenient and ‘smarter’ platform. While miniaturization of technology is encouraging a new era in competition, end users are using these technologies to enhance every aspect of their living and lifestyle. From travelling to making office work more efficient, technology has progressed into a whole new era. The latest buzz in the market has been about IoT or Internet of Things.

How smart is getting smarter with IoT

Assessing the reach and impact of IoT

Though most IoT devices haven’t yet reached the average home or user, they have been making huge impacts in businesses, manufacturing facilities and healthcare premises.  The main concept behind IoT is devices and networks that are able to collect data, exchange it and use it to create digital strategies, either programmed or manually. This is a concept where a “billion of things across the globe are constantly interacting with each other”. A brief idea of its implications is given by products like Smart ACs that control the room temperature by sensing the number of people in the room and the environmental factors. Everything is automatic and more ‘sensible’ with IoT.

These smart and connected devices are expanding our opportunities to create a global village. A greater reliability, high product utilization and newer functionalities have been able to help us transcend the traditional boundaries of products and service delivery. The changing products and services are also forcing traditional companies to retool and rethink every part of their business process. For businesses, it’s not just about the new opportunities but also new threats; specifically from evolving technologies.

What the future holds?

IoT, today has risen to reflect a growing number of smart products, right from the smartphones to automatic drives in automobiles. It has been just twice before in the history of men that information technology has so radically been able to reshape the nature of our living. Today, ‘information’ is a crucial part in all the technologies. Experts, across the globe have suggested that IoT would “change everything” but this could be a dangerous ‘over-simplification’. Like internet itself, connected products come with new range of possibilities but the rules of competition remain the same. To stay successful, it becomes crucial that businesses begin to understand the new rules of the game as fast as they can.

Smart products of today come with three main elements – “smart” components, connectivity components and physical components. While smart components amplify the values and capabilities of the physical components, connectivity in turn amplifies the value of the smart ones, allowing the overall setup to exist beyond the physical realms of the product. The results invariably present a virtuous cycle of improvement. Common examples would include Schindler PORT technology reducing elevator wait times by more than 50% and Big Ass ceiling fans sensing people entering the room and engaging themselves. We no more have to press the “switch”! Devices know when to operate, how to operate, all by themselves!

6 UX Tips from Don Norman – The King of Design

Donald Arthur Norman has been a very prominent figure in the design world. Apart from that, he has founded several startups, is an author and more popularly, a very captivating speaker. He is best known by his books, especially the title, “The Design of Everyday Things”. Now, much of Don’s own design is centered on user friendliness. From doors to computers, he has been encouraging academics, creativity and technological innovation to refining existing products. His approach has always focused on designs that that have been able to simplify task structures, make things more visible, mapping things rightly, elimination of design errors, affordance, and exploiting the ‘power of constraints’. Let’s discuss some of his design tips that are applicable to our UI/UX industry.

1.     The principles of design remain the same

According to Don, the basic principle of designing remains the same. Though time is changing and technology is evolving, the main goal of designing has always been to make things simpler to use, see, feel and understand.

2.     Great products being a small part of the story

There could be an amazing solution to a specific problem but as long as the solution isn’t packaged well, it might fail to leave any consequences. User experience is the only thing that completes a product. The best example for this could be Apple – a company that based its products on user experience. If we begin to compare, the iPod provides the same functionality as the average walkman but iPod became more loved simply because the way it worked.

6 UX Tips from Don Norman – The King of Design

3.     User experience must be complete

The aim of design, be it products or websites should not be limited to just the user experience but the entire interaction it has with the end user. As long as design doesn’t support functionality, it is as good as being useless.

4.     Being late is better than being too early

Great designs might have integrated high end usability but it is also necessary to ensure that the end audience is ready for the new revolution. If you don’t have a strategy to be able to change the way a user interacts with your product/service/website, it is better not to lead the design innovation. Reception holds the clue to the success of your revolutionizing UI/UX.

5.     Design isn’t the absolute necessity in MVP

If your products/service can offer high value to its customers, UX/UI won’t matter too much. However, this would only apply to the first iteration of the product. At later iterations, design will hold the key to adoption. So, if you are a startup business, don’t spend too heavily on UI. Focus on your core services and once you start making money, design would be the key in encouraging your customers to stay with you.

6.     Focus

We all know how too many cooks can spoil the broth. Similarly, too many designers engaged in the same UI/UX blueprint will provide inconsistent products. Stick to a dictator of a chief designer and let him challenge himself!

Write in with your comments on which of these will be a part of your next UX Design project

5 ecommerce trends that small businesses need to follow

The days when Ford could “manufacture a car in any color, as long as it is black and still can sell” it to thousands of customers are long gone. Today, customers have grown from being takers to makers. Every business, small or big, runs according to the expectations, demands and necessities of its end users. For online businesses, this statement has greater implications. While the market has been able to break geographical boundaries, thanks to internet, there are also several new players competing for your target demographics. Entrepreneurs and businesses that still want to sell profitably and build a brand name need to adopt updated ecommerce strategies. Here are some key trends to follow in 2015 and beyond:

1.     The growth of mobile

Since 2013, Black Friday has been for several times been referred to as the “Mobile Friday” by ecommerce players. In 2013, 40% of the online orders on this day were placed via mobile devices. The trend continues and more numbers of shoppers are turning to mobile to browse through products and have them delivered at their doorsteps. Ecommerce brands like Flipkart are on their way to leaving behind the desktop interface and encouraging mobile-only shopping over apps. This goes on to how that the mobile is becoming a more powerful, popular and profitable platform for shopping. For small businesses, this could be the best way to start penetrating the market.

2.     Faster and free shipping

Nothing is more frustrating for a customer when his/her delivery is late. Also, customers don’t want surprises when it comes to shipping costs to be paid for their item. In many cases, shipping costs are more than the price of the product itself, making many customers looks for alternative and preferably local vendors. In response to the behavior, several ecommerce businesses are focusing more on faster and free shipping. Be creative and you can always find a way around the logistics.

5 ecommerce trends that small businesses need to follow

3.     Businesses sans borders

The online phenomenon presents the opportunity for local businesses to go beyond their local markets and pitch their products/services. Online retailers, across the globe are in fact working on expanding their sales beyond the domestic boundaries of their countries. With several courier and logistics services at your disposal and the means of online payment getting easier, the world is just like a singular market.

4.     Content marketing

Coming to the point about how small businesses can market their products and services so extensively, there isn’t a better and more proven way than ‘content marketing’. According to a recent study, about 82% of online retailers are planning to increase their budgets of content marketing. This includes textual information, images, video content, press releases, blogs, etc. long gone is the trend to keyword targeted SEO campaigns. Modern customers want fresh and unique ideas to be delivered.

5.     Personalization

Personalization and tailored products and services are keys to winning the rat’s race in the modern marketplace. This is also an area where businesses can start getting creative and work on unique ways to attract and impress the end user. The sole aim is to make a more personal connection with the customer.

Starting off with Ruby on Rails

The best programmers never quite were pushed into the career. It’s usually the passion and inclination to create your own platform on the internet that makes the start to this incredible journey. Among the most popular languages popular with programmers today is Ruby on Rails. A compact, elegant and a very fun way to create web applications, Ruby on Rails is simple enough to use. Written in the Ruby language, the application designing framework is intended to make job easier for programmers and web developers. It allows writing fewer lines of codes to accomplish more than any other language would be able to.

The logic of Ruby on Rails brings forth a ‘best way’ to do things and encourage designs. Someone who has discovered the potential of Rails will love the tremendous increase in productivity and create a happy experience for both the programmer and the end user of applications.

The Ruby on Rails philosophy is based on two important elements:

1 – Don’t repeat yourself

DRY of ‘don’t repeat yourself’ explains that every piece of information must follow an unambiguous, authoritative and single representation within the system. Not having to write the same things over and over again coding gets more extensible, less buggy and more maintainable.

2 – Convention over configuration

Ruby on Rails offers several different ways to reach the same goals. All its defaults are set to this convention and programmers will not have to attend endless number of configuration files.

Installing your first ‘Rails’ framework

The first of the steps on your Ruby on Rails journey is installing the application framework. Open the command line prompt on your system (“Open Terminal App” for MAC OS users and “Run” for Windows users) and type ‘cmd.exe’. It is necessary that you verify the latest version of Ruby on Rails installed in your system. Also note that any commands that are prefaced by the $ sign must be executed in the program line.

Alternatively, MAC users can use the Tokaido tool to run Rails and Windows users can seek help of the Rails Installer.

Creating a blog application

Ruby on Rails offers several scripts called ‘generators’ that have been designed to make life easier for a developer. It creates everything necessary to begin with a Rails project. One of such tools is the ‘new application generator’ that offers the foundation of your first application without having to write codes. To be able to use this generator, users need to open a ‘terminal’ and navigate to the directory where you will be able to create files. The next step would be to type: ‘$ rails new blog’.

This command will open up a Rails application referred to as ‘Blog’ and subsequently install ‘gem directories’ mentioned in ‘Gemfile’ via the ‘bundle install’. Next step would be switching to its folder $ cd blog.

Hello Rails! You will have a functional application ready. All you need is to access the web server for your development machine. This could be run using the blog directory ‘bin/rails server.

Android Pay – Google’s answer to Apple Wallet

Google’s Android Pay is much more than a mere addition to the brand’s offerings. It comes as an answer to Apple’s Mobile Wallet – the Apple Pay and a complete reboot of how online payments were managed by Google. According to a recent report, the online marketplace would be worth more than $1tn by 2017. Every brand is encouraging its customers to switch to mobile shopping rather than shop around with their plastic cards or cash. While it is a means to boost a brand’s market penetration, choppers are quite convinced because it offers hem the convenience of ordering products and services on the go.

Apple Inc. was the first company to realize the potential of the online payment trend and introduced its own Apple Wallet. It ensures that customers/end users would no longer have to walk around with cash or credit cards. Any payment can be made through their mobile phone – offering better security and mobility.

Android Pay – Google’s answer to Apple Wallet

Google too has been prompt now as its version of the mobile wallet comes within some months of the Apple alternative. Android Pay can be used with any Android powered smart phone that has NFC (Near Field Compatibility) and runs on a version higher than Android KitKat4.4. Along with storing credit cards on the phone, users will also be able to access loyalty cards and other similar services.

The first brands to recognize and integrate Android Pay into their payment systems include Bloomingdale, Subway and Macy’s. Further, the functionality will be extended to mobile checkout by the end of 2015. Google’s Android Pay currently supports some major credit card providers including Visa, American Express, MasterCard, Wells Fargo, Citigroup, and Bank of America. The aim of this mobile wallet system is to not reveal credit/debit card details to retailers at any point of time during a transaction. The wattles alternatively generate tokens that reduce the risk of data thefts and identity thefts.

Some defining features of Android Pay:

  1. Retailer Partnerships: Mobile wallets such as Android Pay highlight the active partnership of several brands and retailers, giving the latter the impetus to offer a more secure means of payment.
  2. Carrier Commitment: Initially, Google’s Android Pay was supported only by Sprint – a major US based carrier. This required a majority of the consumers to download the app into their devices. However, according to the latest development, carriers like AT&T, T-Mobile and Verizon will ship their products with Android Pay included in the package.
  3. Shedding the dead weight: Google in fact debuted with mobile wallets back in 2011 but it was a failure. Learning from the past experience Google sheds down extraneous features like P2P to make the feature market-ready.
  4. Security: While it was Apple’s Touch ID that could verify the authentication of users, Google too introduces fingerprint recognition to make payments more secure.
  5. Simplicity: The simplicity of Android Pay ensures that any users would be able to convert their credit and debit cards into mobile payment gateways.
  6. Tied to Android: Shoppers will be tied to the Android registration but not the app. This will ensure that even a contactless payment can be made using just your fingerprints!

What Makes CakePHP So Popular

PHP has been one of the earliest, most consistent and most popular programming languages for a long time now. However, it too suffers from few inadequacies like an inconsistent naming convention, lacking of certain important features, disorganization, security vulnerabilities. These lacking are duly overcome by platforms like CakePHP. Based on the same PHP basic, CakePHP offers a highly flexible architecture that is being used by developers globally to develop, maintain and deploy several types of applications. The best part of CakePHP is that it reduces the mundane scripting part to a great extent, allowing the developer to be creative. The popularity of CakePHP has made it grow through the decades. It is being constantly updated and the latest version (v.3.0) allows high build quality, a friendly license, clean MVC conventions, secure scripting, zero configuration and built-in authentication.

What makes CakePHP so popular

Here are the several reasons why CakePHP has been widely accepted in the developer community globally:

Open source

At the heart of CakePHP is open source architecture, making it the common goal of every developer. Being open source ensures that developers get access to the latest development tools and don’t have to spend huge amount of time and energy in writing the same source codes. This helps add robustness to applications, thereby improving their performance.

MVC pattern

Based on an MVC framework, CakePHP developers can access, insert, delete and modify data directly from the database. Further, the platform facilitates support data on the screen to assist developers through a friendly process. A controller process always responds to events on identification of errors, ensuring an immediate modification even before it has interacted with the database. Overall, the MVC pattern makes it quite easy to differentiate logic from the presentation.

Reusability

As hinted earlier, CakePHP saves a lot of time through readily available source scripts. Since the programmer can always access pre-written codes, it could be base to several projects that have different applications. This allows the developer to focus more on the creative and logical part without bothering about the tedious task of re-coding.

Zero configurations

At no point in the coding or configuration process do developers need to specify website URL or a source library. CakePHP is programmed to auto-detect all these information, saving time for the developer. The only thing you do need to worry about is the platform’s database connection setting.

Wide community

Again, being open source, CakePHP is supported by a huge group of peers, always ready to share information and learn from each other. With so many contributors, new programmers always get access to new tools and features with CakePHP. The well maintained forum also makes it easier to research upon new development features and functionalities.

Built-in validation

This feature has been newly introduced into the CakePHP framework, making the language even more encouraging. Previously, the validation process was very basic. However, modern features bring in options of advanced validation rules into single field.

Overall, CakePHP is one of the easiest and most flexible programming languages a developer would come across. It has been the core of popular websites like mapme.com, followmy.tv, mygasfeed.com and many others.

Top 5 OS E-commerce Platforms

The current market is saturated with ecommerce businesses. In the year 2012, ecommerce businesses were growing at the rate of 21.1%and for the first time crossed the $1 trillion mark. However, this is just the start and it is estimated that by 2016, more than 15 million people would be hopping online. The growth of online businesses has also led to a parallel growth in the ecommerce OS product line. Today, with so many ecommerce OS platforms available, coming up with the best choice can be an overwhelming task. However, the choice you make with be the Reason for the success or failure of your business. Here’s the top 5 pick when it comes to Ecommerce OS:

Top 5 OS E-commerce platforms

1.     Magento

The unquestionable leader, Magento is currently the core of more than 150,000 businesses globally. The platform is highly powerful cost effective and flexible to address the varying needs of several types of industries and product lines. Magento was officially launched on 31st March, 2008 and within a year; it was adopted by more than 30,000 businesses. Some of the top brands using Magento at their backend processes include Nike, Olympus, Samsung, Nespresso, Stussy, The North Face and Office Max.

2.     OSCommerce

Among the oldest ecommerce platform, OSCommerce was launched in 2000 and had been the leader of the pack until Magento came into being. By August 2008 (Magento still in the developing stage), OSCommerce accounted from more than 14,000 ‘live’ websites. Today, OSCommerce has a huge community of developers that make it a flexible, secure and highly supportive ecommerce platform. OSCommerce, being open source, is free to download and avails premium quality templates, plugins and add-ons to make website and web application development a breeze.

3.     OpenCart

OpenCart is incomparable to other sin its own way. A highly secure ecommerce solution, OpenCart allows businesses to start their online business with ease and also link it up with ecommerce functionalities. OpenCart can be used with any web server that supports MySQL and PHP. Further, OpenCart is available as free software and in several cases, have proved to be the best choice for ecommerce startups. The platform allows merchants to create unlimited categories, sell unlimited products, support several currencies, read various languages and establish an effective means of payment and shipping.

4.     Zencart

Similar to OpenCart, Zencart is another easy online store management system that specializes in a more user friendly interface and a variety of options for customer management. If you are looking to regularly campaign with coupon codes, discounts, newsletters, email orders, etc, Zencart makes it a very easy process. Zencart is extremely easy to understand, use, install, modify and customize. Entrepreneurs with limited technical knowledge too can hope to create a successful ecommerce platform using Zencart.

5.     WordPress

Launched as a blogging platform, WordPress today has curved to become a tremendously powerful CMS system. With a huge range of plugins, templates and ad-ons, WordPress boasts the same standards in CMS as Magento does in retailing. If you are looking to establish a easy, attractive and highly functional website, WordPress should be the first choice.

Ready to start building your next technology project?