Author Archives: Ajitesh Kumar

Ajitesh Kumar

I have been recently working in the area of Data analytics including Data Science and Machine Learning / Deep Learning. I am also passionate about different technologies including programming languages such as Java/JEE, Javascript, Python, R, Julia, etc, and technologies such as Blockchain, mobile computing, cloud-native technologies, application security, cloud computing platforms, big data, etc. For latest updates and blogs, follow us on Twitter. I would love to connect with you on Linkedin. Check out my latest book titled as First Principles Thinking: Building winning products using first principles thinking. Check out my other blog, Revive-n-Thrive.com

How to Estimate A Story in An Agile SCRUM Sprint

Wondering on Agile SCRUM Sprint Estimation

Wondering on how to estimate a set of business requirements into one or more Agile SCRUM Sprints? Go on reading further and let me know what you think.   If you are planning to work/develop software based on Agile SCRUM development model and are looking out for an estimation model, here it goes. Quick Overview on Agile SCRUM Before I go into presenting the model, let me present a quick introduction to Agile SCRUM development model. Agile software development is a set of software development methods that are based on iterative and incremental method, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. Following is taken from Agile Manifesto …

Continue reading

Posted in Agile Methodology. Tagged with , .

Business Process or Workflow – Chicken or Egg – Who Comes First?

Chicken Or The Egg - BPM or Workflow

Many a times, you ask the definition of business process or workflow, it so happens that the mention of other happens while a person is trying to define any of them. And, the next moment the question is asked that what is the difference between business process or workflow, and that which contains which one. This article tries to define each one and relate them appropriately while mentioning distinct difference between them? At times, it tends to appear like a chicken or egg situation which represents the fact that whether workflow in your systems may be progressed to define and create business processes (bottoms-up) or business process, once defined, needs to …

Continue reading

Posted in BPM, Freshers. Tagged with , .

Tools to Obfuscate Your Java Classes

If you have got the requirement to demonstrate your tool built using Java on client machine (third party computers) by deploying your entire tool, and you are worried if your critical application jar files consisting of Java classes could get decompiled and seen by others, you could use some of the following tools: Proguard could be used to obfuscate the class files. ProGuard is a free Java class file shrinker, optimizer, obfuscator, and preverifier. In the process of obfuscation, it renames the remaining classes, fields, and methods using short meaningless names.  JBCO (Java ByteCode Obfuscator) could transform code to be more complex, esoteric, or otherwise obscure in order to hinder reverse-engineering nad decompilation …

Continue reading

Posted in Java. Tagged with .

Switch Statement with String in Java 7

Following code represents one of the requirements in which you could use Switch statement to work with String in Java. This should be noted that this feature got newly introduced in Java 7. Below is the class CalendarUtil which has a method namely numberOfDays to calculate number of days in a month of a given year. Note the logic for february month which will vary based on leap year logic. Rest of the days count remain same in different months irrespective of years. public class CalendarUtil { public static int numberOfDays(int year, String month) { int numberOfDays = -1; switch (month) { case “january”: numberOfDays = 31; break; case “february”: …

Continue reading

Posted in Java. Tagged with .

List of Application Security Forums/Groups You Would Want to Frequently Visit

Exploring security forums

If you have been looking out to explore (as depicted by diagram below:-) various different application security forums to keep yourself updated with latest application security discussions, following is the list of security forums you may want to visit frequently and get yourself involved to remain up-to-date with application security: Online Forums http://www.coderanch.com/forums/f-65/Security: Very active & popular forum, this is primarily a place for Java developers to discuss on security topics related with Java. http://www.is-ra.org/forum/: Not very active though, however, this is a place for information security professional who are more interested in discussion topics related with some of the following: Ethical hacking & penetration testing Digital forensics Cryptography and …

Continue reading

Posted in Application Security. Tagged with .

Why BPM for Manufacturing Businesses?

This article talks about various different scenarios in which Business Process management (BPM) technologies (tools & frameworks) could bring a lot of difference to your manufacturing business and help you do better in terms of improved operations and overall increase in the bottom line (profit) of the business. Before we look into some of the use-cases of BPM, lets see how it would look like without BPM? [adsenseyu2] How does the manufacturing IT landscape look like without BPM? Given that you have large applications in relation with Enterprise Respource Planning (ERP), Customer Requirements Management (CRM), Product Lifecycle Management (PLM), Supply Chain Management (SCM), following is how you enterprise architecture landscape could look …

Continue reading

Posted in BPM. Tagged with , .

Tips to Migrate from Traditional to Spring MVC based Java Web Application

migrate

This article talks about what would it take to move the non-spring Java application to Spring-based Java application. This essentially means that if you have a traditional Java web application with object instantiation taking place in independent class files or based on Factory pattern, this article would help you to move to a Spring based component model. Moving to Spring-based component model would essentially mean that one would move the object instantiation to one of the spring configuration file and that the component instantiation would happen based on dependency inversion principle. Before moving on to the steps, it would be good to learn Spring framework concepts and also Spring MVC …

Continue reading

Posted in Java. Tagged with .

Top 5 Cool Things with New Google Spread Sheets

Following are top 5 cool things that you could do with most recent release of Google spreadsheets: On-the-go formula applied on any column with “=”: Tried formula such as =sum(100,120,200) and pressed enter. And, I got 420 in no time. Take a look at the diagram below. Some of the formulae that could prove handy when you are working with numbers are following: TODAY() SUM or ADD MULTIPLY MINUS DIVIDE POWER Filter Views: With filter views function, one could view and analyze data by hiding the data that one wants to temporarily take out of view. With this feature, one could save multiple filter views as unique names to return to and …

Continue reading

Posted in Tools. Tagged with , .

List of Javascript Frameworks You Heard The Most In Recent Times

Following is a list of javascript framework that you might have heard most in recent times, and wanted to have a quick understanding about them. Lets try and understand their definition and their applicability in terms when would you want to use them. Node.js: Following is definition of node.js from their website (http://www.nodejs.org):Node.js is a platform built on Chrome’s JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.Node.js can become consideration for some of following use-cases: Need to maintain persistent connection between browser back to the server. In other …

Continue reading

Posted in Web. Tagged with , .

R&D Framework for Achieving Customer Delight

research development

[adsenseyu2] If you are associated with a software service provider and have come across the customer comments such as following, you may want to read ahead and share your thoughts as comments: The team is creating great software based on what we are asking them to do; However, they are not adding value in terms of suggesting new technologies (tools & frameworks) to optimize one or more existing business processes or suggesting better way of doing the business functions.  The above is more common with software service providers who have been working on staff augmentation model and want to step up to become a strategic business partner of their customers …

Continue reading

Posted in Software Engg. Tagged with .

BPM – Key Enabler Technology for Managing Aam Aadmi Complaints (AAC)

bpm

Now that the whole of country, India, has woken up to a corruption free governance, if there is one technology that could help accelerate this movement in a managed manner, it has to be business process management and related tools & frameworks. Janata Darbar (People’s gathering with government stakeholders for grievances resolution) has always been famous for quite sometime. However, very recently, it caught media attention for how unmanaged it can go if not planned properly. AAP (Aam Aadmi Party) chief minister, Arvind Kejriwal and his team of cabinet ministers decided to talk to people and scheduled a meeting where they expected 5000 people to gather and thus, planned accordingly. …

Continue reading

Posted in BPM. Tagged with .

Free Online Courses from MIT For Java Web Applications

MIT OCW

[adsenseyu2] Following are 4 courses from MIT Open Courseware (OCW) that a newbie would consider for enhancing his concepts for working in Java web applications: Software Engineering for Web Applications: The objective of the course is to enhance the familiarity of students with some of the following key concepts: Concurrency Unpredictable load Security risks Opportunity for wide-area distributed computing Creating a reliable and stateful user experience on top of unreliable connections and stateless protocols Extreme requirements and absurd development schedules Requirements that change mid-way through a project, sometimes because of experience gained from testing with users User demands for a multi-modal interface The entire course can be downloaded from following link: …

Continue reading

Posted in Freshers, Software Engg, Web.

Ongoing Research & Development in NIT Surathkal

NIT Surathkal, one of the premier engineering colleges of India has following two departments where research & development related to computer science is going on. Computer Science & Engineering: The departments supports research in different areas such as application security etc. One of the interesting ongoing project is development of tool for detection of SQL injection vulnerabilities in the web applications. Information Technology: The department of information technology is currently supporting research, primarily, in  the area of data mining, distributed computing and web services. The other areas of research includes big data, semantics web, security etc.

Posted in Campus Bytes. Tagged with .

Top 5 Bad Application Security Practices

bad security practices

We all come across good security practices and make ourselves familiar with them to develop secured code. However, it may also be good idea at times to know about some of the bad security practices such that we, for sure, try and avoid them. [adsenseyu2]   Following are top 5 bad practices you may want to know about: Do NOT interact with un-trusted programs: Make sure that the external programs that your program is invoking for reasons such as data or functionality, must have got reviewed and tested for security compliance. One of the common entry points into secured applications are these unsecured applications and hackers just love them. Hackers, …

Continue reading

Posted in Application Security, Code Review. Tagged with , .

Top Architecture & Governance Principles for 2014

architecture governance

Following are some of the key architecture and governance principles that you could adopt for your project for this year 2014. The architecture principles could be seen as “guiding principles” based on which team would want to design, develop and test the applications. Key Architecture Principles (Guiding Principles) Holistic approach to application security: Given that applications could be accessed from different channels including web and mobile devices, the attack vectors for hacker has increased to a great extent. Thus, traditional approach of applying perimeter level security and doing security penetration testing may not suffice. Instead, it may be a good idea to take a holistic approach towards application security as …

Continue reading

Posted in Architecture, Software Engg. Tagged with , .

Top 5 Computing Fundamentals to Learn for a Prosperous 2014

Happy New Year 2014

For those of you looking to find out what will be good to learn in this new year, it would be OK to believe that computing fundamentals has become more important than ever before and it would be good to learn the same in 2014 rather than any of the programming languages such as java, .NET, or languages belonging to open-source stack. Following are some key computing fundamentals to focus upon in the coming year: Performance Engineering: As every business is planning to move their applications to cloud for various different reasons including cost-cutting measures, it has become much more important to write efficient application which makes the optimized usage …

Continue reading

Posted in Freshers, Software Engg. Tagged with , .