AAU Software Engineering community
3.27K subscribers
430 photos
42 videos
360 files
353 links
Welcome
C𝚘𝚍𝚎 πš’πš˜πšžπš› πšπš›πšŽπšŠπš–πšœ
Bπšžπš’πš•πš πš’πš˜πšžπš› πšπšžπšπšžπš›πšŽ.
C𝚘𝚍𝚎 πš’πšœ πš˜πšžπš› πš•πšŠπš—πšπšžπšŠπšπšŽ.
πŸ’Lπš˜πšπš’πšŒ πš’πšœ πš˜πšžπš› πš–πšŠπšπš’πšŒ
From 0 to 1, we make it happen...✍️

πŸ’Œ use a chat icon in the bottom left corner
Download Telegram
University students, listen up.

This isn't a motivational speech, believe me for real Just sit down and talk to 3 or 4 university graduates ...Ask them about their lives after graduation Then you'll understand what I'm talking about because Sometimes, you don't realize the value of a season of your life until you're no longer in it.

You probably won't have this much freedom again.

ο»Ώ
Right now, you have assignments, exams, deadlines, and all the usual university stress.
But alongside all that, you still have something valuable: the freedom to explore without having your entire life figured out.
Want to learn to code? Build something 😳
Curious about AI? Experiment with it.
Have a business idea? Try it.
Want to create content, freelance, or learn a completely random skill? Go for it.

Don't let your uni life become nothing more than attending lectures, passing exams, collecting grades, and waiting for graduation.

Build projects.
Meet people who challenge you.
Try things you're terrible at.
Start something that might fail.
Learn things that have absolutely nothing to do with your degree.

You don't need to have everything figured out. You just need to start exploring.

Because one day, you'll graduate. You'll have responsibilities, deadlines, bills, and a job that demands most of your time and energy and finding time to experiment with random interests might not be as easy as it is now.

So please, don't spend your entire university life preparing for a future while forgetting to build something for it.

Your degree may matters.
But there's so much more you can do with these years.

Use this time to discover who you are, what you can build, and what you're capable of becoming.

Don't just survive university. Make something out of it. πŸ’ͺ

@CTBEsoftwareengineers
❀25🫑7✍6πŸ‘4πŸ”₯2
Error UX: Showing the Right Error

Don't show users only β€œSomething went wrong.” Define each error and decide what the user should do next.

βž” Network error: Check your internet and retry.
βž” Timeout: The request took too long. Try again.
βž” Validation error: Show what is wrong with the input.
βž” Authentication error: Ask the user to log in again.
βž” Permission error: Explain that they don't have access.
βž” Server error: Show a simple message and offer support if needed.
βž” Rate limit: Ask the user to wait before trying again.
βž” Resource deleted: Explain that the item no longer exists and offer a way back.
βž” Conflict: Explain that the data changed or the action cannot be completed as requested.
βž” Upload failure: Explain the problem and offer retry or cancel.

For developers: Logs should include the error type, error code, request ID, time, affected operation, and useful technical details. Never log passwords, tokens, or other secrets.

Users need clear messages and next steps. Developers need enough detail to find and fix the problem.

@CTBEsoftwareengineers
❀14
I just spent 30 minutes debugging. The bug was that I never saved the file. πŸ€¦β€β™‚οΈ

Let me explain.
I changed my code. Ran it. Same error.
Changed it again. Same error.
Rewrote the whole function. Same error.
Googled. Read websites. Blamed the library. Blamed the framework. Blamed my laptop.

Then I noticed the white dot on the tab. The file was unsaved the whole time.
My code was probably fine for the 30 minutes😭.

Every developer has a story like this, and nobody talks about it. We all act like we only fail at hard problems, but half of our bugs are typos, wrong branches, and the wrong .env file.

@CTBEsoftwareengineers
πŸ‘14😭11❀3😒1🫑1
A Team Can Have Genius People and Still Fail


Our Friday weekly article is here.
this one is about team work and how to make it efficient. Hope you enjoy reading it :)



@CTBEsoftwareengineers
❀6πŸ”₯1πŸ‘1
Software engineering is dying?

No, it isn’t.


AI is reducing the barrier to producing code. It is not eliminating the need to understand what that code should do, why it should work, and what happens when it doesn’t.

The industry isn’t necessarily losing software engineers. It’s changing what separates an engineer from someone who can simply produce software.

@CTBEsoftwareengineers
❀5πŸ”₯5😭2
Common Git and GitHub features besides git commit and git push:

βž” git status shows which files are changed, new, or ready to save.
βž” git log shows the history of past changes.
βž” git diff shows exactly what changed in a file.
βž” git branch creates or lists separate lines of work, so people can try ideas safely.
βž” git switch or git checkout moves you to another branch.
βž” git merge combines changes from one branch into another.
βž” git clone copies a repository to your computer.
βž” git pull gets the newest changes from a remote repository.
βž” git stash saves work temporarily when you are not ready to commit.

βž” On GitHub, pull requests let people review and discuss changes before merging.
βž” GitHub issues help track bugs, tasks, and ideas.
βž” GitHub Actions can run tests and builds automatically.
βž” Forking copies someone else’s GitHub repository to your own account.
βž” Releases let you mark and share important versions of a project.


@CTBEsoftwareengineers
❀6πŸ”₯2
Hello AAU Coders!

I'm a new admin here, and I'm excited to get this community active . πŸš€

Starting *today*, expect a post every day:

πŸ’‘ Coding tips & concepts
🧩 Quizzes & challenges
πŸ›  Project ideas
πŸ’Ό Internships, jobs & scholarships
πŸ“š Study & exam resources
πŸ˜„ Dev humor & motivation

This is your community, so help shape it.πŸ‘‡
What do you want to see more of? React or comment:
❀18
If our code lives on GitHub, where does GitHub store its own code? πŸ‘€
Feel free to ask AI. We want you to know what happens behind the scenes.
Answer in the comment πŸ‘‡

@CTBEsoftwareengineers
❀3⚑1
AAU Software Engineering community
If our code lives on GitHub, where does GitHub store its own code? πŸ‘€ Feel free to ask AI. We want you to know what happens behind the scenes. Answer in the comment πŸ‘‡ @CTBEsoftwareengineers
Ever wondered where GitHub stores its own code? πŸ‘€

GitHub doesn't need some magical place outside the system.

Its engineers use private repositories on GitHub itself to build and maintain the platform.
Yep, GitHub uses GitHub to build GitHub.

Curious to see what’s behind the scenes? Explore their public repositories here πŸ‘‡

πŸ”— https://github.com/github
🀩3πŸ”₯1
Evening all,

I'm SOphonyas, your new Administrator. I'm truly excited to join and contribute to this vibrant community.

AND I expect a lot of welcomes, seriously don't be shy! πŸ˜­πŸ˜‚
❀18🫑4πŸ‘3❀‍πŸ”₯2
1. Coding is just the cover. Software Engineering is building the skyscraper
πŸ‘‰AI is getting incredibly good at coding (writing lines of syntax). But coding is not software engineering.
AI cannot talk to a frustrated client, understand their messy human emotions, figure out what they actually need (because clients never know what they want), and design a system to solve it. It doesn't understand business strategy, user empathy, or organizational politics. The syntax is automated; the problem-solving is yours.


2. If everyone can code, the "Ideas & Execution" person rules the world

Think about this as an entrepreneur: If AI makes coding "free," then code is no longer a moat. A billion-dollar company can't stop you just because they have 10,000 engineers. If you have a brilliant idea, a deep understanding of a specific industry's pain points, and the drive to execute, AI becomes your free, infinite workforce.
Instead of being a tiny cog in someone else's tech company, you are now the conductor of an AI orchestra. But to conduct the orchestra, you still need to know how music works. You need that engineering foundation to guide the AI effectively.


3. The "Last Mile" Problem (Why AI needs you)
Projects like ArtCraft prove exactly why humans are safe. An AI can generate 90% of a massive codebase in an hour. But that last 10%? It’s filled with weird, hallucinated bugs, security vulnerabilities, and architectural nightmares.
AI cannot fix its own deep architectural flaws yet because it doesn't "think" it predicts the next token. The world is going to need a massive wave of AI-fluent human engineers to step in, debug, refine, and deploy this massive wave of AI-generated software.


4. You are entering at the absolute baseline

Imagine trying to learn software engineering in the 1970s, punching holes into physical cards and waiting days to see if your code worked. Every generation of tech gets higher-level abstractions.
You don't have to struggle through the old, tedious ways of learning. You get to learn with AI as your personal, 24/7 tutor. You can learn concepts 10x faster than engineers did five years ago. You aren't falling behind; you are being handed the most powerful educational tool in human history.




The Real Danger


The only way you get "cooked" is if you quit. If you quit, you miss the boat entirely. If you keep going, you become part of the top tier of builders who know how to command these models to build the future.

Take a deep breath. The tools are changing, but the world will always need builders !

@CTBEsoftwareengineers
πŸ‘8❀3πŸ”₯1
Programming is clear thinking, not memorizing syntax or chasing trends.

Avoid the classic beginner trap of obsessing over boilerplate and language quirks. Instead, focus on what actually lasts:

β€’ Breaking complex problems into simple, atomic steps

β€’ Designing clean, predictable data flow

β€’ Catching edge cases before they catch you

Frameworks come and go, but core logic and algorithms never change.

Once your mental blueprint is clear, the implementation is the easiest part. Master the fundamentalsthe code will follow effortlessly.
❀4
AAU Software Engineering community
Programming is clear thinking, not memorizing syntax or chasing trends. Avoid the classic beginner trap of obsessing over boilerplate and language quirks. Instead, focus on what actually lasts: β€’ Breaking complex problems into simple, atomic steps β€’ Designing…
A real example of this that hit me recently:
I was building a voice feature using Expo Audio, and no matter what I did, the recorded audio sounded terrible. Muffled, quiet, unusable.
Instead of stepping back to understand how the audio pipeline actually worked, I started treating symptoms: β€’ Tweaked random recording presets and audio modes
β€’ Added aggressive volume boosts
β€’ Built an entire backend server dedicated to noise suppression and audio cleanup
Hours of work. Still sounded awful.
The root cause?
I had let AI scaffold the initial audio config, and it silently added unnecessary low-level flags that throttled sample rates and audio modes that were completely fine by default.
I finally stopped patching over the mess, closed the extra backend, and actually read the core Expo Audio docs.
I stripped out the clutter and implemented the native config myself from first principles.
The result: Crystal-clear audio, zero external processing servers needed, and 70% less code.
When you don’t fully grasp the underlying tool, you fix bad assumptions by adding more complexity. Master the fundamentals, understand what each line actually does, and the simplest solution usually wins.
❀6
Developing a Local Wispr Flow Alternative Using a 16.9 MB Model

For individuals seeking immediate desktop voice-to-text conversion with no API expenses and complete offline privacy, Whistle by Cactus Compute facilitates execution on pure CPU architecture:
β€’ Minimal Resource Footprint: 16.9 MB model size
β€’ High Performance: Approximately 11 ms time-to-first-token
β€’ Multilingual Support: Seven languages supported
β€’ GPU Independence: Operates directly on the CPU

πŸ›  Implementation in three steps:

Global Hotkey and Microphone: Assign a push-to-talk key (for example, holding Ctrl + Space) to record audio via a lightweight background script utilizing pynput and sounddevice.

Immediate Local Speech-to-Text: Transmit the audio segment to the local Whistle engine immediately upon releasing the key.

Active Window Input: Insert the resulting text directly into the currently focused text field using OS-level keystroke emulation methods such as xdotool, ydotool, or Windows SendInput APIs.

This solution ensures complete privacy, eliminates network latency, and requires minimal RAM. It serves as an efficient project for enhancing daily typing productivity. πŸš€
❀3πŸ‘1
β–ŽDev3Pack Hackathon 2026

Build on Solana with students around the world, 27–29 November 2026. Join online or at the Addis Ababa Build Station to collaborate, get support, and bring your ideas to life.

Learn Solana and Rust through the bootcamp starting 2 November. Top teams can continue with the Bridge Accelerator from 7 December.

Compete for prizes including $10,000+ for the best Solana app, $500 local-track prizes, Seeker Phones, and $2,500+ in student perks.

register here and Participate!



@CTBEsoftwareengineers
❀4
Hungry enough to build


➑️ Here is our Friday's weekly article. If you want to build a startup as a software engineer and student, you should read this.


@CTBEsoftwareengineers
Please open Telegram to view this post
VIEW IN TELEGRAM
❀7πŸ”₯4
This media is not supported in your browser
VIEW IN TELEGRAM
This AI skill explains code by building it as a machine. πŸ”§

Meet Anatomy, a free, open-source skill for Claude Code, also compatible with OpenCode, Codex, and Antigravity.

Ask it to explain a hard concept, and instead of a wall of text, it builds an interactive illustration of a machine that works like the concept. A rate limiter becomes a token bucket machine. A cache becomes a lock that only opens when every pin matches.

You can hover to take it apart and watch the numbers change live.

It already passed 19,000 stars on GitHub in about two weeks.

Source: github.com/wheresryan22/anatomy
πŸ‘3❀2
HTTP status codes in plain English 🌐

Every time your browser or app talks to a server, the server answers with a 3-digit code. Read it before you blame your code.

200 - OK, it worked
201 - Created, your POST made something new
400 - Bad request, your request was malformed
401 - Unauthorized, you need to log in
403 - Forbidden, logged in but not allowed
404 - Not found, that page or resource doesn't exist
500 - Server error, the backend broke

Next time a page fails, check the code first. It tells you where to look. πŸ‘‡
❀5
βš–οΈ THE DEVELOPER'S COURT IS NOW IN SESSION.

Today's defendant:

"If it works, don't touch it."

The prosecution argues that this mindset creates technical debt.

The defense argues that nobody has time to rewrite working code just because the developer had a sudden spiritual awakening. 😭

πŸ‘¨β€βš–οΈ JURY, WHAT'S YOUR VERDICT?

🟒 INNOCENT β€” ship it.
πŸ”΄ GUILTY β€” clean up your code.
🟑 IT DEPENDS β€” context is king.

Drop your verdict and defend your position in the comments.

Objection? Make it technical. πŸ‘¨β€πŸ’»
πŸ‘Ύ5❀3
What is an API, really?
Think about sending money using a banking app.
You open the app, enter someone’s account number, and send 500 birr.
But your phone doesn’t have direct access to the bank’s database. It can’t just reach in and change your balance.
Instead, your app sends a request to the bank’s system through an API.
The bank checks the request, processes the transfer, and sends a response back to your app.
Request: β€œSend 500 birr to this account.”
Endpoint: The specific address your app sends that request to.
Response: β€œTransfer successful” β€” or β€œInsufficient balance.”
That’s an API. It lets two different software systems communicate without either one needing direct access to the other’s internal workings.
And this happens every time you log in with Google, check the weather, or pay online.
An API is how software asks other software to do something.
❀12