Every Brand needs a digital product expert!

Every Brand needs a digital product expert!

Every Brand is in the business of making & selling a ‘Product’. Assuming you have made a ‘good product’ that meets a need in the market, what is that one fundamental core competency that you (as a brand) need, to sell more of your products? I believe, it is your ability to answer product questions asked by your customers at that zero moment of truth.

Think about the last time you (as a shopper) bought something from your favorite brand. You went into the brand’s store (physical or web), you looked around the assortment on display, found some relevant choices (with some struggle) and then while evaluating which one to buy, you had so many questions on these products – Questions that are to do with the product knowledge and those that can be answered only by a product expert from the brand. Was it easy for you to find those answers? If you were shopping at the store, probably it was relatively easier – you would have asked your questions to the store associate and hopefully (although not always) she knew the answer. What about when you were buying online?

Let’s take my example from last weekend. I needed to buy a new trimmer, I go to my favorite brand’s web-shop and I was welcomed with hundreds of options, loads of images and text information 90% of which I either did not need or I didn’t care. All I cared for was a trimmer that works for both head and beard, has the 2 specific attachments that I am used to and is waterproof. That, it was a struggle to get answers to my questions while I was wading through the different options, is an obvious understatement.  And till today I have not bought my trimmer!

At AskSid.ai we help brands solve this specific problem. Our vision is to organize and enrich product knowledge in a way that makes shopping easy and convenient, inspiring every consumer to buy. With 2 global brands as our customers and after going live in 14 European countries with multiple channels, it is clear that consumers have product questions and without the answers, they will simply not buy. And therefore, at AskSid.ai we firmly believe that every brand (regardless of what product you make) needs a digital product expert who understands the domain ontology, is available online across channels & 24×7 addressing product questions of your consumers. Beyond our 2 customers who are pioneering the way forward in this regard, the most recent example is none other than BMW who launched their digital product expert last week as an in-car personal assistant helping BMW drivers with any questions on their car. (https://techcrunch.com/2018/09/06/bmw-launches-a-personal-voice-assistant-for-its-cars/?utm_source=Direct)

I am excited at the pace in which this new trend is fast emerging. On one side I see global brands embracing this opportunity not just to improve conversions but also to discover insights from product questions consumers ask which often leads to multi-faceted and cross-functional impact on marketing, new product innovation and promotions. On the other side Vertical AI technology is finding a new meaning and thanks to the investment and focus from biggies such as Microsoft in laying out the foundation technology layer, Vertical AI in its truest sense is already becoming a new normal.

If you would be interested to learn more about what we do or share some of your perspective on the above, I welcome you to reach me via our website www.asksid.ai or my email sanjoy.roy@asksid.ai

Why conversational AI is crucial to move your brand beyond “contact us”?

Why conversational AI is crucial to move your brand beyond “contact us”?

According to Business Standard, digitally influenced spending in emerging markets alone will be around $4 Trillion by 2022. What does this mean to global brands? Quite simply it means that they need to re-invent their consumer engagement strategy. Solely depending on having a website that is commerce-enabled might not be enough to capture a significant share of this online spending and brands who understand this will emerge as the future winners.

Also, It’s no secret that in recent times, the face of e-commerce has undergone immense changes too. Many brands have set up shops online (barring exceptions such as Chanel who still don’t believe in ‘online’) and the consumers are relieved by the fact that it’s possible to buy ANYTHING while sitting on their couch or traveling to work. With this new way of shopping where convenience precedes everything else, the old school ways of “popping into a store” and availing the assistance of the sales representative is fast becoming a thing of the past. But, the same product questions one would ask at a store still remain to be answered. This is where the “Brand-Consumer” interaction is undergoing a lot of changes and the Brand must re-invent its engagement strategy if it has to survive.

What if there was a capable and reliable way for the brand to stay in touch with every customer 24×7? Sort of like a digital store representative on the website (or other channels), an expert on all the products that the brand offers and ready to guide the customer attenuated to his/her needs?

One way to achieve this is to tap into the ocean of Artificial Intelligence potential that is only growing every minute. An intelligent chat or voice interface that understands the intention of the consumer and that makes the journey of the user a lot less tedious. From product discovery, Q&A about various products, taking customer service requests and most importantly, let a customer service representative have a conversation with the customer whenever required. A platform like this has been proven to make the brand more accessible, reliable and helpful to the end-user. Saving best for the last, deriving insights from the conversations to improve the user journey as well as the brand’s understanding of what the customer needs also forms the core of the system.

We at AskSid.ai help brands realize that such personalized communication with the end-users at scale is the key and insights which arise from that are invaluable – be it new product ideas, enriching the product catalog with additional information or also at times smart replenishment of high demand SKUs. And finally, It’s proven to directly have a positive impact on conversions (2X in some instances)!

Curious Much? Let me know your thoughts at CuriousMuch@asksid.ai and let’s start a conversation.

Author: Prajwal Simha (Prajwal.Simha@asksid.ai)

Can AI make your business far more intelligent?

Can AI make your business far more intelligent?

 

In today’s hyper-driven consumer market, using AI right can be a daunting task. According, to a recent Gartner survey, 37% of organisations are still looking to define their AI strategies, while 35% are struggling to identify suitable use cases. Take for instance the experience paradigm shift, where B2B became the new B2C, and attention, became the new currency ––where your customers are increasingly looking for, if not expecting a personable, authentic, and seamless experience, for every interaction, across devices, on the go.

Can AI and machine learning enhance your digital brand and product experiences?

Can AI help your customers discover products faster?

Can AI drive up conversions and ultimately boost sales?

According to a recent survey of global brands, only 4% of respondents had deployed AI. AI can do a lot more than just help your business move smart.

Learn. Learn. Learn: Leveraging the availability of data
Data is where it all starts. The interconnectedness, like a child, the machine keeps learning. Now more than ever, companies like yours need to react quicker, best using data, from all prior customer service interactions, calls, and feedback, to visual data, so you can better deliver what your customer is looking for. And it’s no surprise that customers are delighted when they find exactly what they are looking for.

FACT: Data is one of the cornerstones of any AI process. AskSid.ai skims through every available product data source –– to ensure that your customers have a great experience finding the right product, and your teams have access to precision marketing insights, closing the gap between discovery and checkout.

Deploying AI’s competitive advantage NOW!

Gartner estimates that by 2020, deploying Virtual Customer Assistance (VCA) technology will be a priority for more than 30% of global brands. At AskSid.ai we believe that these VCA deployments will not be just to address order related or delivery related questions but can be used more strategically towards answering product questions from customers accelerating their path to conversions.

FACT:For a leading European woman fashion brand selling premium hosiery garments, AskSid.ai answers questions ranging from “Are there push buttons at the crotch?“, “Will these hide my veins and scars?” to “I don’t know my size, can you help?”. As the questions get curiouser and curiouser, it’s easy to see why the customer experience is being consistently rewired, and evolved. Overall, AskSid.ai consistently answers more than 1000 product questions and discovers more than 400 new and unique questions a month allowing this brand to continuously enrich its product catalog while ensuring a differentiated online experience for its customers.

Dispelling the myths: It is difficult to deploy AI now!

There is a common belief that to deploy AI, brands and their teams require a long-term commitment and immense hard work that can be a strain on their current existent resources. In addition, the cost will go through the roof, making the ROI story daunting for the brand. AskSid.ai addresses these issues, dispelling myths, so brands like yours can adopt the best technologies that Artificial Intelligence companies of today offer. From that sense, it is really a game-changer and has recently completed two end-to-end AI platform deployments within just 4-6 weeks per brand. Further, if you are a brand with presence in multiple markets, new country rollout after the initial onboarding is done in a matter of days.

Here is what a Global Fortune 500 brand had to say about AskSid.ai “we found working with the AskSid team a really positive experience. AskSid quickly got up to speed with what we were trying to achieve, creating an excellent user journey that demonstrated our brand is the most helpful brand and improving the conversion of our website. The pace to launch was fantastic with development from top-line user journey to live tool in approximately six weeks. Post-launch and throughout the team were highly responsive to any requests with new use cases developed at pace and their team quickly felt like an extension of our own team”

The magic lies in the platform architecture that is highly scalable, secure and algorithms that can handle multiple languages and multiple channels. That’s really the best of AI SAAS. For more information about the platform and how we do things so fast and at such scale, please reach us at www.asksid.ai. We will love to start a conversation!

The Hidden Opportunity: intelligence is needed everywhere

By 2020: 20% of citizens in developed nations will use AI assistants to help them with an array of everyday, operational tasks. 3

Right now, the most common mistake business leaders make with Enterprise AI is to focus on automation rather than on augmentation of human decision making and interactions and the varied applications of artificial intelligence. According to a Vice President of a renowned global research firm, we need to look at how we are using technology today during critical interactions with customers — business moments — and consider how the value of those moments could be increased.

Take for instance AskSid.ai platform component Switch-Sid that hands off the customer conversation to a human agent at the right time to close a sale. Basically, the VCA works hard to engage 100% of the website traffic and seamlessly lands warm and qualified leads to agents to convert as is evident from the Fortune 500 brand in UK where this is already operational.

Many Marketeers have not yet realised the full potential of AI-based virtual customer advisors, including chatbots. The ability to sense what the customer needs and serve exactly that – that’s intelligence. The revolution has begun! AskSid.ai helps brands achieve their larger goals, going beyond ROI –– enabling enterprise to save money, grow revenue, increase operational efficiency, innovate products, personalise the experience, deliver delight and most importantly, be in the business of being far more intelligent. 

Curious Much? Drop us a note at contact@asksid.ai or visit our website www.asksid.ai and let’s start a conversation!

 

Sources:

1. ‘The new wave of artificial intelligence whitepaper’, Avery, 2018

2. ‘Build the AI Business Case’, Gartner, Feb 2018

3. ‘Predicts 2017: Artificial Intelligence report’, Gartner, 2017

India’s AI startups are at a tipping point

India’s AI startups are at a tipping point

By: Malavika Velayanikal

There’s a growing pipeline of high-caliber founders – who have “been there, done that” – taking the startup plunge with artificial intelligence (AI) and machine learning (ML) tech in India. On the other hand, startups with shallow applications of AI are quickly finding out that investors and clients alike have become more discerning.

For example, Zoogaad raised US$500,000 back in 2014 to provide personalized news powered by AI. But, unlike Toutiao in China, it did little to push the boundary beyond Google alerts and had to shut down.

At the other end of the spectrum is Bangalore-based SigTuple, which ticks most of the boxes for the new wave of promising AI startups coming out of India. SigTuple applies AI-powered analytics to visual medical data, such as blood smear slides that go under a microscope. This improves the speed and accuracy of diagnosis.

The startup’s founders had worked together at American Express’s big data lab. One of them is SigTuple’s chief scientific officer Tathagato Rai Dastidar, a computer science Ph.D. who was the director of the Amex lab. So they had the competence and experience to become deep-tech entrepreneurs.

A younger startup in Bangalore, AskSid, has chosen to focus on women’s fashion. Its AI-powered bot helps brands get into meaningful conversations with their customers while helping them shop online. After successful pilots, topline brands like Wolford have deployed the bot in multiple countries. AskSid’s founders come with rich corporate experience from India’s IT industry.

Read the complete article on Tech in Asia

My Top 10 learnings: Building multi-tenant, SaaS, micro-services system for diverse tenants

My Top 10 learnings: Building multi-tenant, SaaS, micro-services system for diverse tenants

 

Designing and building a multi-tenant SaaS system to support diverse tenants is a challenging task. Added to that, with a micro-service architecture, it makes the system difficult to maintain. We at AskSid, have been building (it’s never “built”) such a system, which supports tenants of different kinds along with their multiple markets and languages. The velocity of customizations and enhancements is very high and has been increasing while the quality stays world class and uncompromisable.

The 2 biggest challenges we face in building such systems are

1. Cost of provisioning a new tenant

Once tenant’s data and integrations are available, onboarding of tenant may require changes at multiple places and human effort needs to be expended for manual activities. This introduces some delays before the system actually starts serving the tenant.

2. Incapability or cost of customizations

As the cliched saying goes, “Customer is the King”. More often than not, tenants request customizations on the top of existing services offered. In such situations, the system may not be capable or may have to bear the cost in terms of time and effort to accommodate the customization.

It is this constant trade-off between speed and cost that makes it difficult at times to architect, provision, and run such a system.

From the perspective of an ideal SaaS system, it is practically impossible to build a 100% reusable multi-tenant system which can accommodate tenants of different kinds. Hence, we need to take a hybrid approach, where some parts of the system are completely reusable and other parts handle the tenant-specific functionalities.

Here are some practices we can follow, to increase the flexibility, velocity, and quality of SaaS system development:

1. Identify domains and form verticals of your tenants

Data and business logic are what software systems comprise of. The data model and business logic of the system differ tremendously per domain of tenant. To serve tenants from different domains, it is necessary to have your data model and business logic written for domains if not for each tenant.

2. Flexible data models

Data modeling is the first and most important step in software designing. In multi-tenant systems, you need to mold multiple tenants’ data into a single model. It also should allow future customization and new features. Flexibility should be kept in mind while modeling the data.

3. Containerization and CI/CD

Containerization of apps and CI/CD has become a de facto standard in micro-service based systems. They tremendously improve the efficiency of development by speeding up the testing and reducing the probability of issues occurring due to external elements.

4. High automation

Automation is the key to increase the velocity of change and maintain world-class quality. Any human-involved and repetitive activity becomes the candidate for getting automated. Keep a watch for such scope of automation and act whenever you spot any opportunity.

5.Externalizing and centralizing the configurations

Even the tenants of the same domain may have differences in system behaviors. To support such differences, having just the constants in your configuration file is not sufficient. Any change-prone behaviors, feature switches or tuning values should be moved to configuration files. To achieve faster releases, move your configurations out of your container images. Centralizing all the configuration at the single place will help developers get a single view of all configurations.

6.Admin apps for you and tenants

Have an Admin app, with a bare minimum UI (jazz it up over time), which can be used for anything and everything that is needed to be done by an admin to keep the system running. This can include user management, tenant management, job management, system’s maintenance activities etc.

Enabling your customers to do self-service is a key goal of any SaaS system and factoring admin ease of use upfront can go a long way in increasing adoption of your system.

7. Cloud IaaS & Container orchestration for auto-scaling and deployments

Using cloud VMs and container orchestration tools like Kubernetes reduces the DevOps efforts significantly. It enables the system to auto scale in the time of load and simplifies micro-service to micro-service communication with internal DNS capabilities.

8. Data transformations and integrations

Provisioning of new tenants brings with it the need of integration with their own systems and data in unique structure and formats. The data need to be fetched and transformed to make it usable for your multi-tenant system. Tenant-specific customizations and transformation into the tenant-agnostic model can be carried out here so that the core multi-tenant components work on single data model.

9.Good isolations for tenant’s data

In multi-tenant systems, there are multiple ways you can store tenant’s data with the ability to differentiate them by the tenant. These ways are multiple databases, multiple schemas, and discriminator fields. The isolation required to have freedom of different schemas, backups, access controls can be provided only by the first 2 approaches. Apart from databases, in brokers, caches as well, the highest level of isolation should be chosen for efficiency.

10. High monitoring and tests

Multi-tenant SaaS systems generally grow large (with respect to the number of components) and become complex to maintain over time. This can be made easier if admins are given the ability to track everything that is happening in the system, in both business and technical aspects. Any significant business events should be tracked by raising such events to a broker. Technical events such as errors, performance, resource utilization etc. can be tracked by means of application logs or any monitoring solutions. Dashboards provide visualizations and alerts which help admins identify, debug critical issues, derive patterns from user behaviors in real time. Automated tests for user interfaces and integrations help identify issues early

To sum up, make design decisions & tradeoffs on common and tenant-specific customizations to hosted apps, data models, and code logic for your tenants with the goal to have the higher velocity for tenants provisioning, ability to customize without impact,  and quality in delivering services.

Interested to learn more on how we are building such a world-class and complex system at AskSid.ai? Reach out to us at curiousmuch@asksid.ai and let’s start a conversation.

Author: Bhushan Vadgave (bhushan.vadgave@asksid.ai)

My Top 10 learnings from Designing Conversational Systems and Chatbots

My Top 10 learnings from Designing Conversational Systems and Chatbots

 

”In the old days, we didn’t write the way we talk because there was no mechanism to reproduce the speed of conversation. But texting and instant messaging changed that—and a revolution has begun.”

 

The truth is that conversational systems and AI have shaken the marketing and technology worlds because they brought the focus back to the customer. Adoption of these systems may be difficult but, in most cases, it is necessary.

Why? … Because, through a conversational system, we get a unique opportunity to design a highly personalised user experience which is available in very few other user-facing systems.

Designing such a system involves automation, personalisation, and ideation of the experience and expertise of the domain to make the system powerful.

Below are my top 10 learnings which must be kept in mind while designing a conversational system:

1. Decide the Journey of the chatbot:

The journey of the bot is key to a successful conversation – It must be intelligent, intuitive, flexible and easy for the user. The message structure, sentences, questions, and compliments must be planned in the flow with a deep understanding of the user problem that the bot is supposed to solve. Plan both guided as well as free flows throughout the journey. Differentiate your conversation experience by designing it to fit your customer’s journey.

2. Remembering the User Context:

This is actually one of the most important aspects of conversational design. Try not to lose user’s context throughout the conversation and be able to refer to it at any point later on – the user will fall in love instantly if you can deliver on this one. The underlying platform architecture and deep knowledge of the industry domain are the two critical success factors that decides how easy or how difficult this can be during implementation.

3. Align to the User:

Bot should be smart enough to align itself to the user’s style. This is key to personalisation. For example, if user sends emojis, the bot should respond with emojis; If user is using exclamation a lot, the bot should also use exclamations. This is a bit difficult if one attempts it at the beginning itself but with time it can be achieved.

4. Give a Personality:

As Vittorio Banfi from Botsoceity puts it – “The personality of your chatbot is like the colour of your website. You can NOT pick a colour”. A common problem in giving personality to the chatbot is that a company always has more than one customer avatars. Does that mean you will have two completely different chatbots within one company? It would be a better idea to ask the users who they are or where they came from and thereby adjusting their experience accordingly. The truth is, like every customer and all human beings, chatbot too needs a distinct personality.

5. Learn and Adjust:

There is no perfect conversation in this world because the “perfection” varies with perception. There is always scope to learn from misunderstandings and adjust the conversational system. The key to a good conversation is how your bot learns and fixes it’s mistakes. Train your bot how to self learn and adjust by building it into various dialogs and providing a dependable knowledge base on which it can fall back on. Using ‘disambiguation’ to train the bot can help a lot in building a successful conversational system.

6. Design with Scale in mind:

Make sure the code base, the conversation flow, messages, and personalisation are built for the future. Think about how the same system can be used by another set of users and different languages in various markets.

7. Switch to human:

Whilst AI is still in its infancy, the chatbots will undoubtedly have problems. Thus, having a fallback to real people can help and delight you and your customers at the same time.

8. UI smooth as butter:

The face of your bot is the UI. Any experience you design for your system is heavily dependent on the user interface it is presented on. The UI for your bot must be clean, fast, interactive and easy to work with. Ease of use may be invisible, but its absence surely isn’t.

9. Fail fast:

In a conversational system, failing fast is very important. Failing in this system will not be the technical errors or bugs but any unexpected flows which leads to an abrupt end that must be adjusted instantly.

10. Design for multiple channels:

keep in mind that messaging platforms are proliferating at a rapid pace. You have Facebook messenger, Skype, web that supports bot technology today and surely Whatsapp, WeChat and many more will follow soon. Your conversation design should be such that when you switch to new channels, you don’t need to rewrite the code or redesign the conversation experience.

In summary, Want your users to fall in love with your bot? Make your bot fall in love with your users.
Curious to know more about how we do things at AskSid.ai? Reach out to me at curiousmuch@asksid.ai and lets start a conversation…

Author: Puneet Joshi (puneet.joshi@asksid.ai)

10 Tips for becoming a better Software Engineer

10 Tips for becoming a better Software Engineer

 

!!Programmer, Developer, and Software Engineer!!

Below are the commonly associated definitions with the terms Programmer, Developer, and Software Engineer.

1. Programmers turn clearly defined solutions into the code, and all beginners start out with the aim to become a programmer. As the saying goes: everyone can become a programmer.
2. Developers take this further – they can code and design solutions and mostly focus on solving real-world problems. All developers are programmers, but not all programmers are developers.
3. Software engineers, on the other hand, see the big picture and have a deep understanding of how code and programming languages work, so they specialise in designing good solutions that are scalable. Suffice to say, all software engineers are developers, but not all developers are software engineers.

My TEN (10) tips to become a better Software Engineer

1. Write it out before you code

Keep a habit of scribbling out the algorithm/pseudo-code before you actually convert the solution into code. Writing by hand can also help you plan your code before you move it to the computer. You can save a lot of time if you write out which functions and classes you will need, as well as how they will interact. Although more time consuming, this restriction will mold you into a more fundamentally sound developer.

2. Keep a checklist of tasks

When you are implementing a feature, its always good to split the bigger tasks into smaller and clearer tasks which are individual logical units and can be tested individually. Keep a list of such small achievable tasks and keep ticking against them once you complete it. This will give you a boost and motivate you to keep ticking more boxes. The checklist can be either in a book or in any software (like Google Keep).

3. Follow proper version control techniques

Follow a proper version control strategy by creating develop, feature, master branches and having proper access policies set-up. Discuss this with your mentors if this has not been set-up. Whenever you start coding make sure you pull the latest version of the codebase and then start. Keep committing/pushing your code after a logical piece or functionality is complete. Don’t keep your codebase in an uncommitted state for a long time. Always test your code in the local machine before committing it to version control. However small the change may be, at the time of pushing code make it a habit to check the diff of the modified files, this will help you track changes that you had not anticipated and will avoid unnecessary bugs.

4. Constant Refactoring

Code refactoring is the process of changing the source code without modifying it’s functional behaviour, in order to improve the code readability and improve the maintainability by reducing the complexity of the code, as well as improving the code extensibility. Failure to perform refactoring can result in the accumulation of technical debt which the developer has to pay at a later point in time. Trust me, no developer would like to be in that situation. Developers often shy away from touching the code that is already working for a long time. The problem arises when a requirement comes to enhance the existing feature. If the code is not in the proper form for it to be easily extended then its a developer hell. So, to avoid such situations, the pro-tip is to always look for areas in your code which can be improved. If you cannot find it yourself then reach out for help in your team.

5. The code does not self-document

Feel free to leave comments in your code giving explanations why you made certain choices. This will help future learners since not everyone will know why you wrote your code in a particular manner. Do not leave comments that explain obvious coding behavior as they might become irrelevant. Proper code comments will improve the maintainability of the codebase.

6. Ask Google

Not all the problems you encounter will have an obvious solution. Always ask Google, there are probably millions of developers who have come across the same problem that you are in and they also have found out a solution for it. So, do not spend too much time looking out for the solution all by yourself. A lot of developers under-appreciate the degree which googling things is a part of a programmer’s job. Sometimes my job is more about knowing how to search for something than actual programming.

7. Always reach out for help

Programming is actually a social activity. I would not be as good of a programmer as I am now if I didn’t have other’s help. Each of my friends are good in certain areas so whenever I have a problem, I know which friend to ask. I also help them out in return when they have a problem. This is really the only way to get things done. What may seem like an immovable bug or an unlearnable topic could be quickly alleviated by a fresh pair of eyes or a new interpretation of the subject. So do not program in silos, always discuss and progress.
You can also follow Pair Programming technique at times. Pair programming is a technique that involves two developers working on one computer to complete a task. The two developers switch between being the “driver” and the “navigator.” The “driver” writes the code, while the “navigator” helps guide the problem solving and reviews the code as it is written. Switch frequently to get the benefit of both sides. Pair programming has many benefits, it gives you a chance to not only have someone review your code, but also see how someone else might be thinking about a problem. Being exposed to multiple ideas and ways of thinking will help you in problem-solving when you got back to coding on your own.

8. Remember that Technology Always Changes

I like to think of myself as a programmer first and a language-ist second since there will be a day when all of the programming languages we use right now won’t be used anymore. For example, if I started in the 80s, I would be using certain forms of assembly code that are all gone now for the most part. This will happen to all technologies no matter how good or bad. There will be a day when no one uses Java anymore. That said, there is a broad paradigm that programming languages fall into, and there’s sort of a family tree for programming languages.

So, if you know a language that is similar to another one, it can be very easy to pick that language up. For example, Python and Ruby are almost the same programming language. It’s true that, culturally, there are huge differences. However, other than that, they’re almost the exact same thing, so learning one when you know the other is very easy. So do not associate yourself to any technology or programming language and treat them as just tools that will help you in solving a problem at hand.

9. Remember that it is OK to have bugs in your code

We often see a lot of bugs reported in the functionality that we developed, which means most of the time, we’re failing. If all of our programs were feature complete and we didn’t have any bugs, programming wouldn’t even be a thing. Just the fact that we are programming means we either don’t have many features yet, or our software has problems. So, in some ways, you’re always failing as a programmer. This is a weird mindset to get into, but you just have to be okay with things not being perfect and not working; it’s literally our job. Programming is long-term process and in the journey, you will face new obstacles all the time. Keep a habit to record the mistakes that were committed so that you do not commit the same going forward, following which shows you are constantly learning and upgrading yourself as a developer.

10. Always find out ways to automate repetitive tasks

There will often be tasks which you do on a more frequent basis. Like running a set of commands or performing certain activities, which involve you switching between multiple applications/programs/screens, which eat up most of your time. It is advisable to convert these time taking daily activities to be automated in some way either through scripts or simple programs which can be run with a single click or command. This will save your time and you can focus on more interesting tasks and not worry about the routine and mundane tasks.

You definitely should have the mindset that is commonly associated with that of a software engineer and start thinking big.

Curious Much? Let me know your thoughts at CuriousMuch@asksid.ai and let’s start a conversation.

Author: Nitish Deshpande (nitish.deshpande@asksid.ai)