NinethSense oWnZ mE! – Praveen’s CTO Blog

NinethSense oWnZ mE! – Praveen’s CTO Blog

Article: Target Fixation Problem in IT

The other day, I was reading about target fixation problem in vehicle driving and it occurred to me I have met many people in Information Technology field also with such a problem. Target fixation as per Wikipedia:

“an attentional phenomenon observed in humans in which an individual becomes so focused on an observed object that they inadvertently increase their risk of colliding with the object.”

In the fast-paced world of IT, it’s easy to get caught up in the rush of achieving specific career goals. One of the main problems with this is burnout. When an individual is too focused on climbing the corporate ladder or mastering a particular technology, they might end up working long hours without taking necessary breaks. This can lead to physical and mental exhaustion, ultimately affecting their productivity and health. Surprisingly, most of the time this is happening subconsciously so we don’t even think about it because it is a blind spot. One of my friend was so addicted to Microsoft SharePoint technologies and was really an expert in that. But he did not bother upskill even when Microsoft decided to strengthen its future by introducing Power Platform elements, such as Power Apps or Power Automate. For him those were alien tracks because he believed SharePoint is never outdated and never it will.

Moreover, target fixation can strain personal relationships. IT professionals who are constantly chasing their career goals might neglect their family and social life. This imbalance can lead to feelings of isolation and dissatisfaction, both personally and professionally. It’s essential to remember that a successful career should not come at the expense of one’s well-being and relationships.

Well, how do we overcome this problem?

Unfortunately, it doesn’t have a silver bullet fix. Recognizing and accepting the reality is the first step.

We have to adopt a balanced approach to cure this. Then set realistic and flexible career goals (SMART goals). Instead of obsessing over a single target, one should aim for a broader vision that includes professional growth, skill development, and personal happiness. Regularly reassessing and adjusting these goals can help in staying on the right track. Additionally, one should cultivate a diverse skill set. In the ever-evolving field of IT, being adaptable is key. By learning new technologies and exploring different roles, professionals can stay relevant and open to various opportunities. This not only reduces the pressure of achieving a single target but also enhances overall career prospects. Additionally, seeking support from mentors and peers can provide valuable insights and encouragement.

In conclusion, while setting career targets is essential, it’s equally important to avoid the pitfalls of target fixation. A balanced approach, continuous learning, and prioritizing well-being can help IT professionals achieve long-term success and fulfillment. Remember, a fulfilling career is one that grows harmoniously with personal happiness and health.

URL: https://www.linkedin.com/pulse/target-fixation-problem-career-praveen-nair–dwpac

Document summarizer using Open AI on LangChain

For the sake of a use case, the intention of this example is to summarize a resume. Google Colab was used for this experiment but you can use your own IDE/environment. Just make sure you have the necessary prerequicites set.

  1. Since I am using Google Colab, I will be uploading the sample input file to the “Files” store. You can choose to use your local disk storage if you are on a laptop/pc.
  2. While you can use any file format, I am using a pdf file as input so we have to convert the pdf to readable text. I will be using pdfx library to read and extract text data.
  3. A meaningful prompt and setting context will be done
  4. Access Open API API
  5. Receive response and show the summarized text.

Below are the instructions and code:

  1. Install Prerequisites

I am using pdfx library to read the pdf document. You can use any provider here.

pip install pdfx

We use OpenAI using LangChain so install the required dependencies

pip install --upgrade langchain langchain-openai tiktoken

2. Load Job Description (JD)

import pdfx
pdf = pdfx.PDFx('sample_data/Sample Resume.pdf')

resume_content = pdf.get_text();

3. Make the resume content compatible for LLM Chain

from langchain.docstore.document import Document
from langchain.text_splitter import CharacterTextSplitter
model_name = "gpt-3.5-turbo"
text_splitter = CharacterTextSplitter.from_tiktoken_encoder(
    model_name=model_name
)

# Caution: This code doesn't bother about large documents so chunking/tokenization is out of scope of this example
texts = text_splitter.split_text(resume_content)

docs = [Document(page_content=t) for t in texts]

4. Initialize OpenAI

from langchain_openai import ChatOpenAI
from google.colab import userdata


# Open AI API key is stored in the Secrets vault in Google Colab
OPENAI_API_KEY = userdata.get('openai_api_key')

llm = ChatOpenAI(
    temperature=0,
    openai_api_key=OPENAI_API_KEY,
    model_name=model_name)

5. Define summarization prompt

from langchain.prompts import PromptTemplate

# Use the prompt "List the skills mentioned in below resume:" to list the skills alone

prompt_template = """Summarize below resume:

{text}

"""

prompt = PromptTemplate(template = prompt_template, input_variables=["text"])

6. Summarization

from langchain.chains.combine_documents.stuff import StuffDocumentsChain
from langchain.chains import LLMChain

llm_chain = LLMChain(llm=llm, prompt=prompt)

#I am ignoring the chunking aspect
chain = StuffDocumentsChain(llm_chain=llm_chain, document_variable_name="text")
summary = chain.run(docs)

7. Print Summary

import textwrap
print(textwrap.fill(summary, width=100))

Example output: <name-removed> is a passionate researcher with a focus on cutting-edge technology such as Machine Learning, Computer Vision, and Deep Learning. He has experience as an Associate Data Scientist-Trainee at Lincode Labs and as an AI/ML Intern. His roles included data collection and cleaning, extending code modules, experimenting and deploying machine/deep learning models, and handling end-to-end processes. He has worked on various projects related to object detection, OCR detection, and classification in the manufacturing domain. <name-removed> has a Bachelor’s degree in Computer Science and skills in Python, machine learning platforms, frameworks, libraries, and tools. He has also worked on academic and personal projects related to border security systems and house price prediction.

Angular-.NET knowledge refresh

Ok, last week I was on an Angular+.NET Core learning spree, and I had to continue since my goals were not met.

  • Monday – Angular foundation
  • Tuesday – Angular foundation cont. – services, .NET Core Web API setup, EF Core
  • Wednesday – continue same… had issues to debug
  • Thursday – replaced bootstrap with ng-bootstrap, for no reason
  • Friday – continues ng-bootstrap wars, and unhappy. Decides to learn Angular Material after reading UI library comparisons
  • Saturday, Today – continues with Angular Material

Wavelength of thoughts

Have you ever wondered why there are certain personalities with people around them – both who likes and hates them ? Here is my thought… its the wavelength difference.

Some people might be considering you as a genius but for others you might be a fool, or a person who love to ask stupid questions. I observe people and try to stand in other’s shoes usually to find why a particular person is like that. This guy might be thinking much faster, or slower than you buddy!

When we talk in discussions, we tend to think, analyse and articulate next statement in mind, which is a (semi) parallel activity. Your pace of thoughts and articulating skills matters. The opponent might be a fast thinker in the same topic of discussion and while you are at point A, he might be at point D so he might be talking about things which are highly relevant to him but you are not even in point B so you have synchronization problems. Vice versa also can happen, and its nobody’s fault. Give more importance to your listening skills so you can race up to his speed and make sense out of what he says.