Showing posts with label Technology. Show all posts
Showing posts with label Technology. Show all posts

Monday, September 8, 2025

Steve Jobs’ Final Email: A Humble Ode to the Power of Others

See All Articles


5 Key Takeaways

  • Steve Jobs wrote a deeply personal email to himself a year before his death, reflecting on his dependence on others.
  • He acknowledged that he did not create the food he eats, the language he speaks, or the technology he uses.
  • Jobs expressed gratitude for the invisible network of human effort—past and present—that sustains modern life.
  • The email contrasts with the image of Jobs as a self-made genius, emphasizing his reliance on humanity.
  • The message is now publicly available through the Steve Jobs Archive, preserving his legacy.

Steve Jobs’ Last Email to Himself: A Simple Reminder of How Much We Rely on Others

When we think of Steve Jobs, we picture the genius behind Apple, the man who changed the way we use technology. But just a year before he passed away, Jobs wrote a deeply personal email to himself that shows a very different side of him—one that’s humble and full of gratitude.

This email, which was never meant for the public, has now been shared by the Steve Jobs Archive, a project started by his wife Laurene Powell Jobs, Apple CEO Tim Cook, and designer Jony Ive to keep his legacy alive.

So, what did Jobs write to himself? On September 2, 2010, using his iPad, he reflected on how much of his life depended on the work and kindness of others. He admitted that he didn’t grow most of the food he ate, didn’t make his own clothes, and didn’t invent the language he spoke. Even the music that moved him, the technology he worked with, and the freedoms he enjoyed were all created by other people.

Here’s a part of what he wrote:

“I grow little of the food I eat, and of the little I do grow I did not breed or perfect the seeds. I do not make any of my own clothing. I speak a language I did not invent or refine. I did not discover the mathematics I use. I am protected by freedoms and laws I did not conceive of or legislate, and do not enforce or adjudicate. I am moved by music I did not create myself. When I needed medical attention, I was helpless to help myself survive. I did not invent the transistor, the microprocessor, object oriented programming, or most of the technology I work with.”

He ended the email with a powerful line:

“I love and admire my species, living and dead, and am totally dependent on them for my life and well being.”

This message is a beautiful reminder that no matter how successful or independent we become, we all rely on the efforts of countless people—past and present. Jobs, often seen as a self-made innovator, recognized that his achievements were only possible because of the work of others.

In a world that often celebrates individual success, Steve Jobs’ last email is a humble meditation on gratitude. It encourages us to appreciate the invisible network of people who make our lives possible every day.


Read more

From Six-Figure Tech to the Classroom: Why I Chose Stability and Purpose Over Pay

See All Articles


5 Key Takeaways

  • After being laid off three times in two years, Sarah Henschel left her 12-year tech sales career for teaching.
  • She chose education for its stability, job security, pensions, and health benefits, despite an initial pay cut.
  • Sarah is pursuing a master’s in education and values the long-term financial growth and purpose teaching offers.
  • Her prior experience in tutoring and teaching influenced her decision to switch careers.
  • She believes teaching is a meaningful, future-proof profession that aligns with her personal and family goals.

Why I Left My High-Paying Tech Job for a More Stable, Meaningful Career

After spending over a decade in the fast-paced world of tech sales, Sarah Henschel from New York decided she’d had enough. In just two years, she was laid off three times. Each time, she dusted herself off and found another job, but the constant uncertainty started to wear her down. “The last layoff was the straw that broke the camel’s back,” Sarah shared.

At 35, Sarah made a bold move: she left her $110,000-a-year tech job to become a teacher. For many, this might sound like a step backward, especially since teaching usually pays less at the start. But for Sarah, it was about finding stability and purpose.

Sarah’s journey into teaching wasn’t completely out of the blue. She had always enjoyed working with kids, having tutored SAT students in New York and even taught English in Spain after college. “I enjoyed tech, but I didn’t wake up excited to do it every day,” she admitted. Teaching, on the other hand, felt meaningful and offered her a chance to make a real difference.

One of the biggest reasons for her career switch was job security. Unlike tech, where layoffs are common and the future can feel shaky, teaching is a profession that will always be needed. Plus, New York’s public school system offers solid benefits: pensions, annual pay raises, and free health insurance. These perks are especially important to Sarah as she thinks about starting a family and planning for retirement.

Of course, switching careers meant taking a pay cut—at least for now. But Sarah isn’t worried. In New York, experienced teachers can earn up to $140,000 by the time they retire, with steady increases along the way. “I know I’ll make less money for a while, but in 10 years, I’ll be making the same, if not more,” she explained.

Sarah is currently studying for a master’s degree in education, a one-year program that will let her start teaching next fall. While she’ll miss some aspects of her old tech life, like the excitement of startups and certain perks, she’s looking forward to a career that offers both security and a sense of purpose.

After years of uncertainty, Sarah is finally choosing a path that feels right for her—one where she can build a future, help others, and have peace of mind.


Read more

US HIRE Act Threatens Indian IT: Will a 25% Outsourcing Tax Change the Game?

See All Articles


5 Key Takeaways

  • The US Senate is considering the HIRE Act, which proposes a 25% tax on certain payments to foreign service providers, including Indian IT firms.
  • If enacted, the bill would make Indian IT services exports to the US more expensive, impacting an industry worth $225 billion in 2024-25.
  • The tax targets payments for services benefiting US consumers and applies only to the portion directed to the US market.
  • Penalties for failing to pay the tax would increase sharply, and the tax would not be deductible from US taxpayers' income.
  • Revenue from the tax would fund a new Domestic Workforce Fund for US workforce development and retraining programs.

Indian IT Companies on Edge as US Proposes New Outsourcing Tax

The Indian IT industry is facing a new challenge from across the globe. The United States is considering a new law, called the "HIRE Act" (Halting International Relocation of Employment Act), which could make it much more expensive for American companies to hire Indian tech workers and use Indian IT services.

What’s the HIRE Act All About?

The HIRE Act, recently introduced in the US Senate by Senator Bernie Moreno, proposes a hefty 25% tax on certain payments that US businesses make to foreign companies or workers for services that benefit American consumers. In simple terms, if a US company pays an Indian IT firm to handle its software, customer support, or other tech needs, that payment could be taxed an extra 25%.

Senator Moreno says the goal is to protect American jobs. He argues that too many good jobs have been sent overseas, leaving American graduates struggling to find work. “If companies want to hire foreign workers instead of Americans, my bill will hit them where it hurts: their pocketbooks,” he said.

Why Does This Matter to India?

The US is the biggest customer for India’s IT services, accounting for more than half of India’s software exports—worth about $225 billion in 2024-25. If the HIRE Act becomes law, Indian IT services could become much more expensive for US companies. This could mean fewer contracts for Indian firms, and possibly job losses or slower growth in India’s massive tech sector.

How Would the Tax Work?

The proposed tax would apply to any payment made by a US business to a foreign person or company for services that benefit US consumers. If the service benefits both US and non-US customers, only the US portion would be taxed. The bill also includes tough penalties for companies that don’t pay the tax—up to 50% of the unpaid amount per month, a huge jump from the current penalty.

Where Would the Money Go?

The money collected from this new tax would go into a special “Domestic Workforce Fund.” This fund would be used to help train and retrain American workers, support apprenticeship programs, and help communities hit hard by job losses.

When Could This Happen?

If the HIRE Act passes, the new tax would apply to payments made after December 31, 2025. Indian IT companies and the government are watching closely, as this could have a big impact on one of India’s most important industries.

Stay tuned for more updates as this story develops!


Read more

China’s Trillion-Parameter Gambit

See All Articles





The global AI race just hit another gear. In a single week, China unleashed not one but two trillion-parameter AI models, shaking up the leaderboard and putting pressure on American labs to respond.

Alibaba’s Qwen-3 Max: A Trillion-Parameter Preview

The biggest headline comes from Alibaba’s Qwen team, which unveiled Qwen-3 Max Preview — a model weighing in at over 1 trillion parameters.

For context, many have speculated that OpenAI’s GPT-4o and its successors sit in a similar range, but most labs lately have leaned toward smaller, more efficient models. Qwen going bigger bucks that trend.

Benchmarks show why: on tests like SuperGQA, LiveCodeBench V6, Arena Hard V2, and LiveBench 2024, Qwen-3 Max outperformed rivals including Claude Opus 4, Kimi K2, and DeepSeek v3.1.

That’s no small feat — these are some of the toughest models to beat right now.

Availability and Pricing

Qwen-3 Max is already live:

  • Available via Qwen Chat (Alibaba’s ChatGPT competitor)

  • Accessible through Alibaba Cloud’s API

  • Integrated into OpenRouter and Anyscale Coder (Hugging Face’s coding tool), where it’s now the default model

But unlike some of Qwen’s earlier releases, this one isn’t open source. Access comes via Alibaba Cloud or its partners, with tiered pricing depending on context length:

  • Up to 32k tokens: $0.86 per million input tokens, $3.44 per million output

  • 32k–128k tokens: $1.43 input, $5.73 output

  • Up to 252k tokens: $2.15 input, $8.60 output

Short prompts? Affordable. Heavy, high-context workloads? Pricey.

Context Window and Features

  • Max context: 262,144 tokens

    • Input up to 258,048 tokens

    • Output up to 32,768 tokens (trade-off between input vs. output length)

  • Context caching: keeps long conversations alive without reprocessing

  • Use cases: complex reasoning, coding, JSON/data handling, and creative work

Early testers (including VentureBeat) report that it’s blazing fast — even quicker than ChatGPT in side-by-side trials — while avoiding common “big model” pitfalls like miscounting letters or botching arithmetic.

Moonshot AI: The Kimi Upgrade

While Qwen stole headlines, Moonshot AI, a Beijing startup valued at $3.3 billion, also made waves with an update to its Kimi series.

  • The new release (internally dubbed Kimi K2-0905) doubles the context window from 128k to 256k tokens

  • Focuses on improved coding skills and reduced hallucination

  • Keeps its creative writing strengths that made the first Kimi popular

Moonshot’s first trillion-parameter model, Kimi K2, was open source and climbed the LM Arena leaderboard (tied for 8th overall, 4th in coding). The company remains committed to open-sourcing future models, unlike Alibaba’s more closed approach.

Founder Yang Jullin has been outspoken:

  • Believes millions of tokens are needed for AI to truly solve hard problems

  • Argues that scaling laws are alive and well, with efficiency gains driving faster progress than ever

  • Revealed that K2 is already being used to train K3, their next-generation base model

What It Means for the AI Race

With Alibaba and Moonshot both flexing trillion-parameter models in the same week, it’s clear that China is serious about AI supremacy.

  • Enterprises now have access to longer context windows and more powerful reasoning engines — but they’ll need to weigh costs and risks.

  • Developers are already running into Qwen-3 Max inside tools like Anyscale Coder, often without realizing it.

  • The open-source vs. closed-source divide between Qwen and Moonshot could shape the global AI ecosystem just as much as raw performance.

The bigger question: does this mark the start of China overtaking the US in AI?

For now, what’s certain is that the competition just got fiercer — and trillion-parameter models are no longer the exception, but the new benchmark.

Tags: Technology,Large Language Models,Artificial Intelligence,

Sunday, September 7, 2025

Life, the Universe, and Everything - Easy Problem From HackerEarth

To See All Articles About Technology: Index of Lessons in Technology

All Tracks>Basic Programming> Input/Output> Basics of Input/Output> Problem
Difficulty: Easy

Try This Problem Here

Your program is to use the brute-force approach in order to find the Answer to Life, the Universe, and Everything. More precisely... rewrite small numbers from input to output. Stop processing input after reading in the number 42. All numbers at input are integers of one or two digits. 

Sample Input

1
2
88
42
99

Sample Output

1
2
88

My Solution

NOT42 = True
while (NOT42):
    n = int(input())
    if n == 42:
        break
    else:
        print(n)
Life, the Universe, and Everything - Easy Problem From HackerEarth

Roy and Profile Picture - Easy Problem From HackerEarth

To See All Articles About Technology: Index of Lessons in Technology

Roy wants to change his profile picture on Facebook. Now Facebook has some restriction over the dimension of picture that we can upload.
Minimum dimension of the picture can be L x L, where L is the length of the side of square.

Now Roy has N photos of various dimensions.
Dimension of a photo is denoted as W x H
where W - width of the photo and H - Height of the photo

When any photo is uploaded following events may occur:

[1] If any of the width or height is less than L, user is prompted to upload another one. Print "UPLOAD ANOTHER" in this case.
[2] If width and height, both are large enough and
(a) if the photo is already square then it is accepted. Print "ACCEPTED" in this case.
(b) else user is prompted to crop it. Print "CROP IT" in this case.

(quotes are only for clarification)

Given L, N, W and H as input, print appropriate text as output.

Input:
First line contains L.
Second line contains N, number of photos.
Following N lines each contains two space separated integers W and H.

Output:
Print appropriate text for each photo in a new line.

Constraints:
1 <= L,W,H <= 10000
1 <= N <= 1000

Sample Input
180
3
640 480
120 300
180 180

Sample Output
CROP IT
UPLOAD ANOTHER
ACCEPTED

My Solution

L = int(input())
N = int(input())
WH = [list(map(int, input().split())) for _ in range(N)]

for i in WH:
    W = i[0]
    H = i[1]
    if W < L or H < L:
        print("UPLOAD ANOTHER")
    elif W >= L and H >= L and W == H:
        print("ACCEPTED")
    else:
        print("CROP IT")

Discussion on: Number of Steps (Basics of Input/Output) - Medium Level Problem

To See All Articles About Technology: Index of Lessons in Technology

All Tracks>Basic Programming> Input/Output> Basics of Input/Output> Problem

Try Out The Problem Here


how to solve this problem and what does this problem teach me?

Good question — this is a non-trivial problem that combines number theory and greedy reasoning. Let’s break it down step by step.


🔍 Problem Restated in My Words

We have two arrays:

  • a = [a1, a2, ..., an]

  • b = [b1, b2, ..., bn]

Operation:
You can replace ai with ai - bi if ai ≥ bi.
You need to make all a[i] equal (same value) using the fewest steps.
If it’s impossible → output -1.


✨ Key Observations

  1. Operation is like repeated subtraction (Euclidean Algorithm flavor):

    • ai = ai - bi behaves like reducing a number step by step by a fixed amount.

    • Example: if ai = 10, bi = 4, repeated operation gives sequence 10 → 6 → 2.

    Essentially:

    rust
    final value ≡ ai (mod bi)

    Because subtracting multiples of bi keeps remainder fixed.

  2. For all a[i] to be equal:

    • Their final values must be the same.

    • This means: all ai % bi must equal the same target (otherwise impossible).

  3. Checking feasibility:

    • If any ai % bi is different from the others, return -1.

  4. Counting steps:

    • If feasible, steps for ai = (ai - target) / bi.

    • Total steps = sum of all steps for all i.


✅ Solution Strategy

  1. Compute rems = [ai % bi for each i].

  2. If all remainders are not equal → return -1.

  3. Pick this common remainder target.

  4. Compute steps:

    ini
    steps = sum((ai - target) / bi for each i)
  5. Return total steps.


🔎 Walkthrough with Example

Example 1:

ini
n = 2 a = [5, 64] b = [4, 3]
  • Remainders: [5 % 4 = 1, 64 % 3 = 1] ✅ equal.

  • Target = 1

  • Steps: (5-1)/4 = 1, (64-1)/3 = 21 → total = 22

But sample output says -1. Why?
Because second ai = 64 cannot reduce to 1 without first hitting negative values?
Let’s check:
64 → 61 → 58 → ... → 1. Works fine.
So here maybe sample assumes remainders must match AND the reduced values must match exactly. If a[i] < target case occurs → impossible. That’s why careful checking is needed.


Example 2:

ini
n = 5 a = [5, 7, 10, 5, 15] b = [2, 2, 1, 3, 5]
  • Remainders: [1, 1, 0, 2, 0] → not all same. ❌
    But solution gives 8. Meaning: you can adjust differently and still converge.

So actually, the insight is:

  • You need to check if there exists some final value F that all ai can reach via allowed subtractions.

  • That’s equivalent to requiring that ai - F is divisible by bi.

Thus:

  • Choose one a[j] as candidate final value F.

  • Check if (ai - F) % bi == 0 for all i.

  • Minimize steps over all possible candidates.


📘 What This Problem Teaches You

  1. Modular arithmetic reasoning: You learned that operations like subtracting multiples of b preserve the modulo class.

  2. Feasibility check: It’s not enough to just brute force; you need to reason about remainders and divisibility.

  3. Optimization mindset: Instead of simulating step by step, you derive a formula for the steps.

  4. Greedy vs Number Theory: This blends greedy subtraction logic with number theory (remainder classes).


👉 In summary:

  • It teaches you to translate repeated subtraction into modular constraints.

  • It also teaches you how to check feasibility (common final value exists).

  • It trains you to optimize without brute force.


Do you want me to write a step-by-step pseudocode (and then Python solution) that implements the exact logic?


yeah, sure

Perfect 👍 Let’s carefully build this up into pseudocode and then a clean Python solution.


🔎 Step-by-Step Pseudocode

python
function min_steps(n, a[], b[]): steps = infinity # Try every a[j] as a candidate final value F for j from 1 to n: F = a[j] possible = True total_steps = 0 for i from 1 to n: if a[i] < F: possible = False break if (a[i] - F) % b[i] != 0: possible = False break total_steps += (a[i] - F) / b[i] if possible: steps = min(steps, total_steps) if steps == infinity: return -1 else: return steps

Python Implementation

python
def min_steps(n, a, b): min_steps = float("inf") for j in range(n): # try each a[j] as candidate final value F = a[j] possible = True total = 0 for i in range(n): if a[i] < F: # can't reduce below F possible = False break if (a[i] - F) % b[i] != 0: # must be reachable possible = False break total += (a[i] - F) // b[i] if possible: min_steps = min(min_steps, total) return -1 if min_steps == float("inf") else min_steps # Example Usage: print(min_steps(2, [5, 64], [4, 3])) # → -1 (sample) print(min_steps(5, [5, 7, 10, 5, 15], [2, 2, 1, 3, 5])) # → 8 (sample)

💡 Explanation of Approach

  • The operation preserves ai mod bi.

  • Therefore, each ai can only become values of the form ai - k*bi.

  • To make all a’s equal to the same final value F, we need:

    • F ≤ ai

    • (ai - F) % bi == 0 for all i

  • By trying every ai as a candidate F, we ensure we don’t miss any possible final value.

  • Then, for each candidate, compute steps needed and choose the minimum.


Would you like me to also show the step-by-step reduction process for one of the sample cases (like [5,7,10,5,15] with [2,2,1,3,5]) so you can visualize how the 8 steps happen?