Chapi Dev Talks
8.55K subscribers
954 photos
109 videos
12 files
601 links
My name is Chapi and I am a Developer.

I post my thoughts about tech here.

Message to our assistant to give U Feedback: @sophiservebot

Join https://t.me/chapidevtalks_group

Urgent? Contact Me: @chapimenge (Don't say hi or ask Meta Questions )
Download Telegram
Chapi Dev Talks
Invitation has been sent out to Backend Development and Freelancing program. Programming with python will be sent tomorrow. Please check your email also spam folder too. Thank you and Good night πŸŒ‰πŸ˜΄
Totally we have received more than 300 submissions and we only choose 120 people for 3 program.

40 people for each program.

It was actually very difficult to choose people.

Major factors are

- people who tells us why they want to join the program.
- people who choose one program only and tell us why.

We saw a lot of people who choose 3 program with no explanation and we really don't know which program is good for them so we didn't select those.

We will post the next phase as soon as we finish the current phase.

Please understand that it was really not an easy task for us to go through all the submissions but we took time and go through it.

Thank you very much for your interest surely we are all doing what we best can here πŸ™.
πŸ‘16
Chapi Dev Talks
Totally we have received more than 300 submissions and we only choose 120 people for 3 program. 40 people for each program. It was actually very difficult to choose people. Major factors are - people who tells us why they want to join the program.…
Invitation has been sent out to Programming with Python mentorship members.

Please be respectful if you are not selected that is okay you can get the same thing here also.

Keep in mind that am doing this out of my free time.

I am stressing myself here to help. Never asked you for money so whether you are selected or not please keep in mind that we all are trying to learn here.

Thank you for understanding
πŸ‘24❀13πŸ™6
Google Foobar progress

Honestly speaking the challenge was tougher than I thought it took me couple of days to solve Level 3 πŸ₯΅.

It sweats the shit out of me πŸ˜‚.

Anyway level 4 next I don't know how am I gonna make time for it.

Enjoy felas
πŸ”₯29πŸ‘12πŸ‘2
Chapi Dev Talks
Invitation has been sent out to Programming with Python mentorship members. Please be respectful if you are not selected that is okay you can get the same thing here also. Keep in mind that am doing this out of my free time. I am stressing myself here…
⚠️⚠️ Reminder ⚠️⚠️

Your invitation for mentorship program will expire today. If you didn't join and expires we will invite other people to the group.

As of this post
Python with Programming is 29 / 40
Backend development is 33/40
Freelancing 30/40 members

Please check your email and join the group..

If the link expires we will invite another batch of member. Specially those who shows interest.

Thank you.
Please open Telegram to view this post
VIEW IN TELEGRAM
πŸ”₯3
🌟 Hey Coders! Let's Build This Repo Together! 🌟

I was in need of developers, and finding them was a challenge. Please help by filling out the details and create a Pull Request (PR) to add yourself as a developer. Don't forget to star the repository!

πŸš€ Repository Link: [Codenight Developers Repository](https://github.com/chapimenge3/codenight-developers)

Let's collaborate and make this repository a hub for talented developers! Your contributions are valuable. Thank you! πŸ™Œ
πŸ”₯2
Everything starts here

Gosh it was the best and we have come a long ways.

My all time advice to anyone is TO HAVE PATIENCE (SABIR).

Let's focus keep up the positive energy we got here.

2024 is our year let's crush it.
πŸ₯°36❀12⚑7πŸ‘3πŸ‘Œ3
Channel photo updated
We have now got our own org on github.


Check it out give us a follow and all content will be posted there



https://github.com/Learn-Coding-with-me
πŸ”₯14πŸ‘2πŸ‘1πŸ€”1
🌟 Volunteer Opportunity: Join Our Mentorship Program! πŸš€

Hey Learn Coding With Me community! 🌐

We're excited to announce an incredible opportunity for passionate individuals to contribute to our mentorship program!

We're seeking dedicated volunteers for three distinct programs:

▢️ Experience Backend Programmer (Python/Django Framework)

Prerequisites: Experience in backend programming, preferably with Python (Django Framework). A solid understanding of backend concepts is also welcome!

▢️ Python Programming Program

Prerequisites: Good understanding of Python, especially in socket programming, asyncio, threading, multiprocessing, and fundamental programming concepts.

▢️ Freelancing Mentorship

Prerequisites: Freelancers with a good reputation who are willing to share their insights and guide aspiring freelancers.

✨ Why Volunteer with Us?

Contribute to the community and empower others in their learning journey.

Share your expertise and help shape the future of aspiring developers and freelancers.
Join a collaborative and supportive environment committed to learning and growth.

πŸ‘‰ How to Apply:

Send us a message expressing your interest and the program you'd like to volunteer for.
Include a brief overview of your experience and what you can bring to the mentorship program.

Our contact: @chapimenge or chapi@chapimenge.com
Please Add Subject to your message as "Volunteer to Mentorship Program"

πŸ™ Important Note:

This is a voluntary opportunity. We are passionate about giving back to the community, and your support is invaluable.

Let's come together to make a positive impact! πŸš€ Feel free to share with someone who might be interested or share this post with your network. Together, we can create an amazing learning experience for everyone! 🌟

Thank you,
Learn coding Team
❀12πŸ‘4
Ever heard of B-Tree Data structure?

They are one of the most popular and common data structure used in database indexing.

You might ask what is database indexing? It's a way of storing values in a very particular way so that searching them will give you a very fast responses (ofc there is more to it.)

Coming back to B-Tree, most database including Postgres and MySQL uses to index thier rows.

Example is All primary key is index by default. That is why if you use always Primary key to search/retrieve from database it is extremely fast.

When I say extremely fast let's put it in number, shall we?

Let's say you have 1 Million row in your Table. If you search using primary key it will only look maximum of Log(1,000,000) = 19.93 ~ 20

This means it only look up 20 items and then it will retrieve the value.

But if you look by something else which example is by name? It will have to look all 1,000,000 on worst case.

Is it not insane 🀯 ?

Seriously it is such an amazing algorithm and data structure itself.

That is why database uses B Tree for indexing.

Anyways it is amazing to explore the space of data structure and algorithms in real world actions.

What is your favourite data structure and why ?
πŸ‘7πŸ”₯5⚑1
How do you think DNS resolve domain name to IP address?

DNS(Domain Name Service) is phonebook of the internet.

All computer are identified by IP(Internet Protocol) address which means the thing we write in our browser like google.com or ethiotelecom.et doesn't mean anything to the computer.

They needs to map it to something they can understand. For example in your contact when you want to call your lover(I know you don't have one 😭), you will look for name something like My Love, then you call them which means you don't remember thier phone number(next time don't forget 😜).

Same thing happens to domain name too. You type ethiotelecom.et, your browser internet provider mostly have a default DNS resolver, then if they know the IP of the domain name already they will take the request to that IP address.

What if they don't know the IP address

1. Checks from its cache if it exists
2. Then ask the Root Servers (13 root server) who have the TLD(.com, .et) record and get couple of servers.
3. The DNS resolver again asks the received resolved to resolve the full Domain Name.
4. Either it will return the IP address or tells you that domain doesn't exist πŸ˜•

It is so interesting how the computer science works complexity and work very well.

I am so glad I got into this tech world.
Please open Telegram to view this post
VIEW IN TELEGRAM
πŸ‘16⚑9πŸ‘2
Chapi Dev Talks
How do you think DNS resolve domain name to IP address? DNS(Domain Name Service) is phonebook of the internet. All computer are identified by IP(Internet Protocol) address which means the thing we write in our browser like google.com or ethiotelecom.et…
Alright let's wrap up our DNS talk with final points.

There are really important concepts we need to cover as we already seen about DNS.

So when DNS record is saved there are couple of things that is being saved along with it. What are those ?

A Record (Address): Address of the servers it's like"Meet me at 172.217.3.110"? It's like sending a secret your location to your imaginary friend(if you have one).

AAAA Record (IPv6 Address): Tells you about IPV6 address of the server. I know right "something we love to use but we didn't" πŸ˜‚. It is like being Friendzoned. Poor soul.

CNAME Record: Forwards one domain or subdomain to another domain, does NOT provide an IP address. We usually use it for our subdomains.

MX Record (Mail Exchange): Directing emails like a digital traffic cop – "Send your love letters to the mail server at 'mail.chapimenge.com' – it's the romance hub!" πŸ’Œ For real it actually works if you wanna try go ahead.

TXT Record (Text): store text notes in the record. It is not like secret, literally just note like you take on your useless note app(JK)

NS Record (Name Server): Stores the name server for a DNS entry. Almost all domains rely on multiple nameservers to increase reliability. Think of it as a bouncer at the club if you wanna find my club go there or here.

Blame @SamAsEnd he force me to do this. It was never my intention to torture you with this painful information.


Anyways Don't tell anyone this is TopLevelDisturbance information.

Good night people.

It's yo boi Chapi 😭
Please open Telegram to view this post
VIEW IN TELEGRAM
πŸ‘8πŸ‘2😁2πŸ™2
Forwarded from Kal
Another good news @chapimenge also want to sponsor additional 10 students πŸ₯° and I will give priority to those who has been following him on his channel https://t.me/codewizme and also on his LinkedIn https://www.linkedin.com/in/chapimenge?utm_source=share&utm_campaign=share_via&utm_content=profile&utm_medium=android_app
⚑3
For those who love to read articles specially from hacker news check this channel that I made.

It fetches the post every one hour and post it on channel.

https://t.me/hackernews_stories


If you dont know Hacker news, please do check them out.

https://news.ycombinator.com/

The best place to read articles
πŸ‘6😁1
Let's Talk about Queue Today!

Queue is a data structure that follows the FIFO (First In First Out) principle. It is similar to a line of people waiting for a Taxi(which is literally YOU waiting for addis abeba Bus/Taxi). The first person to get in the line is the first person to get in to the Taxi that takes you out of Addis Abeba(Who knows may be wede hayat), and if you are the last person well Good Luck! You will have to wait for the next Taxi.

Queue has two main operations: enqueue and dequeue.

- Enqueue adds an element to the end of the queue
- Dequeue removes the element from the front of the queue.

Always remember that the first element added to the queue will be the first element to be removed from the queue.

Applications of Queue:

- CPU scheduling, Disk Scheduling
- When data is transferred asynchronously between two processes.The queue is used for synchronization. For example: IO Buffers, pipes, file IO, etc
- Network Protocols such as TCP/UDP use queues to hold data packets until they are read by the receiving program.
- Web servers respond to requests in the order they are received (first come first serve) using queues.
- Breadth First Search uses queues to store nodes which are to be explored.

Next time you are waiting for a Taxi, think about Queue and how it works.

We will discuss about Priority Queue in the next post.
❀17πŸ‘7
I guess no free time soon 😭
πŸ”₯3πŸ•Š3
Good Morning my people

Advice of the day is going to be

DON'T COMPARE YOURSELF TO ANYONE AND FEEL BAD.

YOU HAVE YOUR OWN UNIQUE PATH FOLLOW IT AND TRUST THR PROCESS. DO YOUR BEST AND LET IT BE HAPPEN


You might see some people with very successful career and feel bad. Trust me everyone see other people can be feel bad but the difference between you and the successful people are they don't compare themselves to others people and feel bad.

Don't create a space for this kind feeling that slows down your journey.

So Let's do our best and let God do it's things. Trust the process.
❀62πŸ‘7πŸ™3πŸ‘1😁1
Chapi Dev Talks
Let's Talk about Queue Today! Queue is a data structure that follows the FIFO (First In First Out) principle. It is similar to a line of people waiting for a Taxi(which is literally YOU waiting for addis abeba Bus/Taxi). The first person to get in the line…
Following up with our Queue concept, We will try to see Priority Queue in this short post.

Priority Queue is an extension of queue in which each element is associated with a priority value and all the elements are arranged in the queue either in increasing or decreasing order based on their priority. If two elements have the same priority, they are served according to their order in the queue.

Usually higher priority elements are served first(based there is a time you might need the lower priority element to be served first).

Efficient way to implement Priority Queue is using Heaps(We will see at some point in the future), or Binary Search Tree.

Example: PQ(Priority Queue)

PQ.push(3)
PQ.push(10)
PQ.push(1)

PQ=(10, 3, 1) sorted by priority in this case increasing order.

Time Complexity:
- Insertion: O(Log(n))
- Deletion: O(Log(n))
- Get Highest Priority: O(1)

Applications:
- CPU Scheduling in Operating Systems.
- Graph algorithms like Dijkstra’s shortest path algorithm, Prim’s Minimum Spanning Tree, etc.
- All queue applications where priority is involved.
- Data compression in Huffman code

Language with built-in Priority Queue:

- C++ STL
#include <bits/stdc++.h> // header file includes every Standard library
// rest of the code is same as the one in the previous post

int main(){
    priority_queue<int> pq; // max heap
    priority_queue<int, vector<int>, greater<int>> pq; // min heap
    return 0;
}
- Java

import java.util.*;

PriorityQueue<Integer> pQueue = new PriorityQueue<Integer>();

- Python

import queue

q = queue.PriorityQueue()
And that's it for today, I hope you enjoyed it and see you next time
πŸ”₯12πŸ‘6πŸ€”2