Author Archives: Ajitesh Kumar
Google Glass – Mirror API – Glasswares – High Level Architecture
If you have been trying to understand the architecture around google glass, I have tried to put it in simpler manner. Feel free to share your comment. Lets try and understand the above architecture: Glass users subscription to your service: You develop one or more web-based service for google glass and publish. These services can be termed as glasswares. Glass users subscribes to your service by logging on to your website authenticating themselves using OAuth 2.0 Glassware updates using Mirror API: Your google glassware then starts publishing to google glass cloud using mirror API. To be able to that, you must register your service with google cloud. Google Glass synchronizes …
Google Glass & Enterprise Adoption
With Google Glass Mirror API been published, all sorts of ideas have started floating around the internet. One such idea that I have been wondering upon is, how would enterprise adopt the Google glass. That means whether an enterprise would want to buy google glasses for its employees in the same way that some companies have been providing iPads to their employees in current scenario. There are multiple different reasons which may lead enterprise to adopt the google glass to certain class of employees to start with. Lets take a look at some of the scenarios. 1. Whiteboarding Pictures: As IT organizations have started moving to adoption of Agile SCRUM …
Big Data is NOT Just about Hadoop Stack Implementation
That is something any one can with a decent technical skill and Java experience could do it. Big Data has lot to do with Data science. And, to stand out as a Big Data solution provider in the IT marketplace, one needs to have a team of Data scientist who work with technologist to implement Big data solution suggested by them. Thus, following is how the Big Data team may look like? Project/Delivery Manager Data Scientist Technical Architect (Hadoop) Technical team including team/tech lead, developers, testers etc Build/Configuration Engineer: This may be important owing to the Big Data typical cluster configurations requirement and the complexities surrounding it. What is a …
What does Google Glass Menu Look Alike?
Following is how the Google Glass Menu look like? How to work with google glass menu? All you have to do is say, “Ok Glass”. Once you said that, following default google glass menu items appear on the little screen shown above: google take a picture record a video get directions to… How you go about selecting a particular menu item? All you do is say one of the following: ok glass, google … ok glass, take a picture ok glass, record a video ok glass, get directions to…
Google Glass Development Kit for Developers At Large
Are you one of the hands-on types who is looking out to get their hands dirty with google glass project? Good news is that Google just released a set of webpages targeted for developers’ community only a few days back. You can access it here. What does this mean for developer community? We, developers, could get started on basic fundamentals and also, do some hands-on exercise. Currently, google development kit is only available for following two classes of developers: Java Python This essentially means that in case you are not familiar with Java or Python (open-source), you may have to quickly get on with these technologies to get started with …
Google Glass to Revolutionize Big Data
Google glass project, once in full swing and with full acceptance by consumers, will turn out to be a biggest source of data which could be treated best by applying big data technologies. Simply speaking, Big Data is data set having following characteristics: Volume Velocity Variety Veracity That said, Google Glass will add variety of data in greater volume at much greater velocity. Some of the existing big data technologies that can be thought to help great deal to store and process data acquired by Google Glass are following: Hadoop (HDFS & MapReduce) HBase for non-relational database to work with data stored with Hadoop Hive for business analytics Solr (Lucene) …
Tired of Paying Maintenance Cost? Get Assessed!
Are you one of those who is interacting with the software vendor in relation with changing the software that they developed? Are you the one who is told about the expensive change requests leading to ever increasing maintenance cost? Have you been thinking or wondering on how long would you pay the software maintenance cost and at what magnitude given the uncertain and ever changing business requirements? If the answer to above is yes, you may want to get your software accessed by internal or external vendor for examining overall architecture and measuring the software code quality aspects such as maintainability. Additionally, ask the assessor to make recommendations on how …
Stay Single and Get Admired for Your Code
You might be wondering on the relationship between staying single, getting admired and coding! And, then, staying single forever 🙂 is something which may not be liked by most of us. So, what is this blog all about? Well, with “single, I am trying to point at “Single Responsibility Principle” and with “stay single”, I am pointing towards writing code based on “single responsibility principle”. Well, as the title of this blog goes, if you keep the “Single” responsibility principle (SRP) in mind while writing your code, there are high chances that you will end up with a great piece of code which will get liked by many including your …
Learnt Agile Development Processes. Now, What’s Next?
The first step when an organization decides to adopt agile development methodology is to look out for a Agile coach who can train the team on agile development processes. For example, an organization either want to adopt extreme programming practices or SCRUM development practices; Once decided, agile coach take team through the specifics of the development processes. For instance, if one wants to go with SCRUM, one would be made aware of some of the following concepts/stages: Sprint Planning/Backlogs Estimation/Velocity Implementation Reterospectives Burn down charts Well, once the teams get aware of the above procedures as part of agile development process, they get down to adopting the process. However, in …
What is the definition of Software Quality?
Even before we try and define what is software quality, it may be a good idea to understand what is meant by term quality? Quality means different to different people. One may call a product or high services of high quality if it serves their needs. Thus, for some people, a cell phone can be of high quality if it provides sound of great quality. However, for others, the ability to browse through social network can be criteria of judging a cellphone (also called as smartphone) quality. To standardize, software quality may be defined as a set of characteristics can be used to measure the following: Outcome of interaction with …
How to Really Welcome Changing Requirements in Agile Environment
If you are one of those who is all set to start with agile development practices in your organization, check the following on how to deal with changing requirements which is one of the important specifications mentioned in Agile Manifesto. If you want your team to accept the idea of changing requirements (hard to digest in the beginning and so resistance) while they are developing the code, following are some of the things you would want to adopt/encourage as part of software development practices to really make team welcome the changing requirements: Training: Software quality with emphasis on how to write maintainable/easy-to-change code Object oriented design principles to ensure the …
At Heart, I am a Software Engineer
We start our career most probably with Trainee and then, once confirmed, gets promoted to Associate Software Engineer or Software Engineer. Our primary job responsibilities include analyzing the requirement, designing and developing the solutions in terms of one or more applications. Until first year of our career, we enjoy our roles and responsibilities as a software engineer. Somewhere after a year or so, we start discovering that one or more of our friend got promoted to something such as “Senior Software Engineer” or “System Analyst”. Hmm! Now that’s what starts disturbing us from the point of view of career progression. This is inspite of the fact that we haven’t yet …
Deliverables On-Time vis-a-vis Technical Debt Risk
When we are working under tough deadlines and there is mounted lot of pressure on software engineers to crank out features by features in a short time to meet business needs, there are high possibilities that software system end up getting high technical debt. Is it that delivery managers are not aware of above fact? Most of the times they are. However, they compromise on software quality against the need to take the product to the market. So far so good. However, they should make it a point to clear out some of those debt with a release just meant for that. These kind of releases are sometimes also called …
What is a Workflow?
While having a discussion with one of my colleagues, I found his interpretation of workflow quite interesting. There are myths around workflow. Many people relate workflow with software requirement requiring decision making such as approval/rejection etc. However, this is how workroom and workflow was described: As part of my daily activities, I may need to get into a workroom and see all that needs to be achieved on that day. Each of the tasks can be called as “output” that needs to be achieved. The “output” will require a set of input and, a set of activities to be performed in order to be achieved. The set of activities can …
How to Create Software Quality Metrics For Your Project
Well, if you are a software development partner for one or more of your customers, and you are looking forward for some of the following, you may want to adopt software quality metrics: Provide customers with software quality trending on various different software quality characteristic Monitor one or more projects for software quality What are various different things that you could measure for quantifying software quality? Defects Density (Functional Suitability): There are different data points you can use to measure defects density. Defects density can be defined to be one of the following: Number of defects divided by total lines of code written per sprint/release Number of defects divided by …
How to Write Good Doc Comments for a Class/Method?
Well, software engineers love to jump to the code (minus document) once design is completed. Majority of them do not write the help text around the class or methods. Some of them do write but they do not provide enough information. There are various reasons for the lack of enough comments within a class. Some of them are lack of time, lack of writing/articulation skills etc. Following are some of the questions which would you like to answer as part of comments for method or a class: Functionality: What does the class or the method do? You may want to provide information regarding the business requirement that the component fulfills. …
I found it very helpful. However the differences are not too understandable for me