- 25
- 9 971
Ahmed Hashem
เข้าร่วมเมื่อ 13 ม.ค. 2022
Hubspot Germany بدأت رحلتي في شركة صخر 2005 و النهاردة بشتغل في
كل مكان إشتغلت فيه اتعلمت حاجات من real time scenarios
هحاول أحكي عن كل إلى اتعلمته هنا في القناة
كل مكان إشتغلت فيه اتعلمت حاجات من real time scenarios
هحاول أحكي عن كل إلى اتعلمته هنا في القناة
[Concurrency] Bank transfer Plus Concurrency without Deadlocks, Interview question بالعربي
Concurrency interview question مشهور
ازاي اعمل bank transfer service
و اعمل concurrency handling
ايه افضل data type نستخدمه للتعبير عن النقود في ال Java
و ازاي ان deadlocks ممكن تحصل في اي system فيه concurrency
و ازاي ناخد بالنا و نتجنبها ببساطة
ازاي اعمل bank transfer service
و اعمل concurrency handling
ايه افضل data type نستخدمه للتعبير عن النقود في ال Java
و ازاي ان deadlocks ممكن تحصل في اي system فيه concurrency
و ازاي ناخد بالنا و نتجنبها ببساطة
มุมมอง: 889
วีดีโอ
Top Software Engineering Technical Interview Types بالعربي
มุมมอง 3572 หลายเดือนก่อน
في انواع مختلفة لل Software Engineering Interviews و ده بيختلف على حسب الشركة عايزة تمتحن الواحد في ايه، و المستوى المنتظر منه، و سياسة الشركة في ال interviews في شركات بتحط اكتر من Code Interview و في شركات بتحط اكتر من Design Interview و في شركات بتحط dedicated behavioral Interview و في شركات بتسأل behavioral جوه اي Interview و ازاي الشركة تتأكد انك الشخص الصح انها تبدأ معاك ال Interview Proc...
[Leetcode] 1117 Building H2O LeetCode using 2 Semaphore Simple Solution بالعربي
มุมมอง 1932 หลายเดือนก่อน
Leetcode concurrency problem ممكن تيجي في انترفيو او يبقى في حالة في الشغل محتاج فيها ت sync بين اكتر من thread و ميكونش في balance بينهم يعني كل مرة thread A هيشتغل محتاج thread B يشتغل مرتين بشرح فيها المسالة واحدة واحدة walkthrough في الكود و شغال ازاي 00:00 Problem 04:06 Solution References: - leetcode.com/problems/building-h2o/ -docs.oracle.com/javase/8/docs/api/java/util/concurrent/Semaph...
[Concurrency] Leetcode 1115,1116 Problems 2 solutions, synchronized & semaphore, difference بالعربي
มุมมอง 8603 หลายเดือนก่อน
مسألتين Concurrency من على Leetcode حليتهم باستخدام Semaphore و ده موجود في Java C , Golang و باقي اللغات و اتكلمت عن الفرق بين ال lock و ال Semaphore 1115 leetcode.com/problems/print-zero-even-odd/ 1116 leetcode.com/problems/print-foobar-alternately/ 00:00 Print FooBar Synchronized solution 03:57 Print FooBar Semaphore solution 07:31 1116 Print Zero Even Odd solution ليه مستخدمتش Semaphore واح...
Payment System Architecture- What does it mean for Fawry, STCPay or Stripe to be PCI DSS?!
มุมมอง 5233 หลายเดือนก่อน
عمرك فكرت هل Stripe او Fawry او STCPay امان احط عليهم بيانات كارت البنك بتاعي ؟! هل الشركات دي مستوى ال information security بتاعهم عالي كفاية ولا ممكن بيانات الكروت تتسرب و تبقى مشكلة كبيرة ؟!
Java 21 Virtual Threads explained بالعربي
มุมมอง 2393 หลายเดือนก่อน
في حاجت كتير باسم Virtual منها Virtual Memory Virtual Reality و موضوع الفيديو Virtual Thread ايه الجديد و امتى استخدمها و ايه القيود بتاعتها و ازاي اتجنب مشاكلها و ايه الفرق بينها و بين ال Java normal Threads اللي اسمها دلوقتي بقى Platform Threads References : docs.oracle.com/en/java/javase/21/core/virtual-threads.html Intro 00:00 Limitations 3:32 Demo Code 8:37 Demo Run 12:19 Conclusion 16:10
Chaos/Monkey Testing Explained بالعربي [How Netflix built reliable system]
มุมมอง 1863 หลายเดือนก่อน
ايه اللي يجيب القرود في ال Software Engineering ال Chaos testing هنجيب فيه قرد يوقع system dependencies عشان نشوف ايه اللي ممكن يحصل في ال service و بناء على النتيحة نعرف ايه مشاكل ال system و ازاي نقدر نحسن من ال reliability بتاعه و نكشف عن ال single point of failure و نقدر نعرف هنعمل ايع وقت المشاكل و نصلحها ازاي What is chaos testing 00:00 Demo 09:20 Summary 18:36
بيع لي القلم ده... أقصد Test لي القلم ده - Traditional Software Testing Simplified بالعربي
มุมมอง 1653 หลายเดือนก่อน
Traditional Software Testing Simplified بالعربي جزء مهم من ال Software Development ال Testing اللي من غيره مش هنبقى عارفين ال service performing as expectedولا لأ ال Testing مش second level citizen محتاج تعامله زي ال production code أنواعه ثلاثة Unit Testing Integration Testing Unit Testing 00:00 Integration Testing 3:12 Acceptance Testing 6:26 Summary 10:55
How Google Test for Reliability -Site Reliability Book, Chapter 17 بالعربي [System Design]
มุมมอง 1674 หลายเดือนก่อน
في كتاب SRE (Site Reliability Engineering) , chapter 17 بيتكلم عن ال Testing for reliability ازاي أوظف ال Testing عشان يعلي ال reliability بتاعة ال system. لو في use case ملهاش test, اعتبرها مش شغالة إلا ان يثبت العكس عن طريق ال Testing ملخص Chapter 17 references : sre.google/sre-book/testing-reliability/ Intro 00:00 Monitoring 00:25 Stress/Load Test 1:52 Canary Test 05:03 Summary 08:09
Distributed System Multi Timezone Handling بالعربي [System Design]
มุมมอง 4164 หลายเดือนก่อน
لو عندي System بيخدم مستخدمين في اكتر من بلد و اكتر من توقيت و ال System نفسه Distributed و running في اكتر من Data Center في اكتر من بلد ايه ابسط طريقة اني اوحد كل التوقيتات المختلفة دي ؟!
Feature دخيله على Postgres/MySQL - لازم تاخد بالك! [System Design]
มุมมอง 5834 หลายเดือนก่อน
Feature جاية غلط في ال Relational DB عاملة شبه العربية ال Hybrid لا طايلة كهربا بس ولا بنزين لو تستخدمها اعرف ال limitations بتاعتها و فكر في حلول تانية زي MongoDB او حتى S3! ازاي ؟! في الفيديو References : - github.com/supabase/pg_jsonschema - www.postgresql.org/docs/current/datatype-json.html - dev.mysql.com/doc/refman/8.4/en/json.html intro 00:00 JsonB vs Json 00:38 MongoDB vs Postgresql Js...
Reflection based Java Mapping Framework اوعى تستخدمها
มุมมอง 3354 หลายเดือนก่อน
ال model mapping في Java بنحتاجه لما Layer تكلم layer زي ان ال business Layer تكلم ال Data Layer او API Layer ايه مشكلة ال mapping frameworks اللي بتستخدم ال reflection ؟! ده موضوع الفيديو Intro 00:00 Mapping need 00:08 The problem 02:45 Demo 04:50
DB Index ممكن يكون غير مفيد او ضرره اكتر من نفعه؟ [System Design]
มุมมอง 1.1K4 หลายเดือนก่อน
DB Index ممكن يكون غير مفيد او ضرره اكتر من نفعه؟ [System Design]
Which DB is used by Youtube, Github, Slack ... ?! Vitess (MySQL Horizontal scalable) [System Design]
มุมมอง 7254 หลายเดือนก่อน
Which DB is used by TH-cam, Github, Slack ... ?! Vitess (MySQL Horizontal scalable) [System Design]
RabbitMQ exhange topic with Proto buff built with Spring boot [Production Ready Apps]
มุมมอง 4764 หลายเดือนก่อน
RabbitMQ exhange topic with Proto buff built with Spring boot [Production Ready Apps]
Api Rate Limit, Do I need !? [Production Ready Apps]
มุมมอง 7765 หลายเดือนก่อน
Api Rate Limit, Do I need !? [Production Ready Apps]
Transfer data securely using encryption [Production ready code in Java]
มุมมอง 2145 หลายเดือนก่อน
Transfer data securely using encryption [Production ready code in Java]
Multi-Threading Fundamentals in Java [Write Production Ready Code] بالعربي
มุมมอง 6455 หลายเดือนก่อน
Multi-Threading Fundamentals in Java [Write Production Ready Code] بالعربي
Write multi thread app in Java [Write Production Ready Code] بالعربي
มุมมอง 3025 หลายเดือนก่อน
Write multi thread app in Java [Write Production Ready Code] بالعربي
Read password from console securely in Java [Write Production Ready Code] بالعربي
มุมมอง 1545 หลายเดือนก่อน
Read password from console securely in Java [Write Production Ready Code] بالعربي
Pass sensitive information in Java [Write Production Ready Code] بالعربي
มุมมอง 1905 หลายเดือนก่อน
Pass sensitive information in Java [Write Production Ready Code] بالعربي
جامد
شرح جميل و سلس شكرا علي مجهودك
Which the better Java Api to achieve this, LocalDateTime, Instant or OffsetTime?
في الحالة أللي بتكلم فيها، يكفي استخدام LocalDateTime على اعتبار انك مسئول عن ال time settings بتاعة ال machines انها تكون موحدة. OffsetTime تستخدمها لو مش عايز تعمل اللي اقترحته في الفيديو و بالتالي تخزن معلومة ال timezone كمان مع ال datetime
سؤال بعد اذن حضرتك حضرتك بتقول مينفعش ازود column ف ال relational database بس oracle ممكن اعمل فيها كدا باستخدام ALTER TABLE table_name ADD (new_column_name data_type); هو اكيد حضرتك مش قصدك كدا ف ممكن اعرف حضرتك قصدك ايه ب اني مينفعش اضيف column جديد مكنش موجود قبل كدا ؟
الفيديو بيتكلم عن JSON column في ال DB مش عارف انت سمعت انهي جزء بتكلم ان مينفعش تزود column, بس هو عموما تقدر تزود بس لما يكون ال Table حجم البيانات فيه كبير قوي ملايين و عليه writes كتير 100 في الثانية الواحدة مثلا ، اضافة column زيادة بيأثر على ال performance بتاع ال DB.
اه تمام كنت بحسب قصد حضرتك على اى داتا تايب
شكرا جزيلا على الفيديو في سؤال عندي بالنسبة للمسألة الأولى لو تسمحلي الطريقة الثانية بتاعت الsemaphore ليه استعملنا ٢ semaphores و ليس ١ فقط بحيث foo تعمل acquire بعدين print بعدين release كذلك bar تعمل acquire ثم print ثم release شكرا
هل لأن احنا مش ضامنين ان foo هتعمل acquire الاول قبل bar
احنا بنستخدم Semaphore عشان نفتح و نقفل ، نتحكم في انهي thread يقدر يشتغل دلوقتي. ال Semaphore بيقفل ازاي؟ ان يكون ال count بتاعه ب Zero. طيب نفترض ان thread Foo اشتغل و عايز يقول ل Thread Bar عليك الدور، لو استخدمنا Semaphore واحد، و عمل عليه release و خلى ال count 1 و بعدها و عمل عليه acquire و مستني دوره، اللي هيحصل اننا مش ضامنين ان Thread Bar أصلا بدأ , بالتالي في احتمال ان thread Foo يكمل بناء على ال acquire لان وقتها هيكون ال count 1 ، و ده مش مطلوب. عشان كدة استخدام Semaphore لكل thread بيضمن التحكم الكامل ان كل Thread مش هيبدأ يكون الدور عليه، اتمنى تكون وضحت.
طرق تخزين معلومات الكارد بطريقة سكيور بقى 😀 جزاك الله خيرا
الفيديو جميل جدا وبيحكي عن اشي ضروري ولكن للامانة انا ضد عنوانه الفيديو بيحكي عن الستاندرز وما بيحكي ابدا عن خلل او ثغرات ف السيستم حتخليني ابطل او استخدم فوري وباقي التطبيقات وايضا الفيديو كله تكنكال فلو حدا بعيد عن المجال مش حيكمله
شكرا على التعليق، الحقيقة معتمد على توجه القناة و الاماكن اللي بنشر فيها الفيديو، غير اني على علم بتخوف ناس شخصيا اعرفهم من فوري و غيرها و شكهم ان في حاجة تكون آمنة بشكل كافي منتجة في مصر او الدول العربية بشكل عام، و بحاول أوصلهم الرسالة دي من الفيديو.
جزاك الله خيرا ❤
جميل جدا❤
It will be better to use light mode during the explanation
اول تعليق على ال theme ان شاء الله بعد كدة light mode.
المحتوى اللي حضرتك بتتكلم فيه عظيم استمر 👏❤
ايه الجمال ده يا احمد ربنا يبارك فيك يا حبيبي وينفع بيك يارب ويكتبلك كل الخير, شرح اكتر من رائع 😍❤ اني احبك في الله . وجزاك الله كل خير يا حبيبي ❤
حبيبي يا يوسف احلى تعليق ربنا يتقبل منا و يجعله علم صالح ينتفع به.
اظن ان افضل استخدام ليها في الsql هو انها تتعامل as config or settings details
فكرة حلوة المهم بيانات حجمها ميزيدش
جزاكم الله خيرا يا هندسه
و اياكم
ازاي نطبق دا على فلتر منتج سيارات مثلا عندنا باراميترز كتير بنفلتر بيها وكل عملية سيرش بيكون ليها مجموعة من الباراميتزر المختلفة في الفلتر زي مثلا الفئة الموديل البراند اللون سعة المحرك ......
انت الافضل ليك مش relational DB في الحالة دي لو ال application حسب ما فهمت read/query intensive يعني معظم العمليات عليها من ال users هي read/search ممكن ساعتها تستخدم elastic search افضل ليك مش بس عشان ال read اكتر من ال write كمان عشان بيدعم ال dynamic query filters لو مش هتعرف تنقل elastic search يبقى تحاول تحدد اهم queries او اشهرهم و تعمل ليهم composite index بس متزودش كتير عشان ال performance بتاع ال write . ممكن برضه تعمل مثلا composite index بأهم 3-4 columns موجودين في كل ال queries في حالة ان حجم ال rows اللي ينطبق عليهم ال filter بناء على ال 3-4 columns ده مش كبير و تسيب ال DB تعمل filter ليهم بباقي ال query columns ، ده هيبقى ابطأ لو حجم ال records اللي بيرجعو من ال 3-4 columns دول كبير.
الصوت سريع جدا
اني اسف، مش هعمل صوت سريع تاني بعدين انت بالذات بتتكلم بسرعة 😃
@@ahmedhashem-404 كااااان 😂
هل يحبذ عمل علاقة بين جدولين من كثير الى كثير في عمود جيسون لو كنت غير مهتم ب consistency وبهذا اكون وفرت مساحة جدول في قاعدة البيانات , اقصد بدل ما اعمل جدول ثالث اكسر فيه علاقة من كثير الى كثير بين جدولين , مثلا في جدول الصفوف اعمل عمود جيسون اسجل فيه المفاتيح الرئيسية للمدرسين الذي يدرسون هذا الفصل , بستخدم هذا العمود في واجهة الاستاذ اعرض له الصفوف الذي يدرسها , لكن ممكن احتاج اعمل كويري وتحديث على هذا العمود كثير ؟
معلش مش فاهم السؤال قوي ، بس خليني اقول تاني استخدام ال JSON column type عموما يبقى لما اكون مش عارف ال structure بتاع data معينة يعني بكلم مثلا service بترجع data مختلفة اكتر حسب نوع ال request لكن لو أنا عارف ال structure بتاع البيانات الافضل اعمل table بيها و اخزن و استرجع البيانات منه ده هيبقى اسرع حتى لو ال application مش كبيرة و عدد المستخدمين مش كبير.
متنساش تعمل subscribe 🙂
موش فاهم جزئية حجم ال json يعني في حالات مثلا موش هيبقى اكبر من حقل نوع text في قاعدة بيانات blog مثلا اللي بيتسجل فيه المقالة كاملة؟! يعني مثلا لو عملته زي screenshot لفاتورة وهتبقى غالبا للقراءة فقط هتبقى فين مشكلة حجمها؟!
لو بستخدم JSON field ال DB هتعمل validation على ال format و لو JSONB هياخد وقت اكتر في ال parsing لو أنا بخزن بس ال data من غير ما اعمل عليها query على fields معينة مثلا في ال JSON كدة مستفدتش منه، ممكن استخدم Blob و خلاص ، و ان كان كل ما ال size بتاع ال field بيزيد استخدم حاجة زي S3 او مفيش Manipulation على ال fields و ال size كبر.
MySQL بدأت دعم JSON من 5.7.8 يعني تقريبا من شهر 8 2015
5.7 هي لسه اشهر version في ال market
IDK, why using the jsonb inside the schema unless it is urgntly needed, my main two reasons, the quires perfromance(query optmizier) uses statstics from the input columns but incase of the json is can't, the second is the footprint of json within table is actully huge, as the key and the value both are stored in the db. I am actully using it in my project, but it is simpler, and my application is not that big so it won't make any differenct even on the long run.
As long as you are aware of the size of the application and the potential growth , should be fine , I used it in 2 different applications , one was in MySQL and the other was in PostgreSQL but we suffered from the scalability limitations and switched at least for MySQL case to S3.
سؤال لو سمحت - ليه بل releation database ميرجعوش ال result بتاعت ال query علي شكل json (حاسه هيكون احسن من ال rows) لاحظت انه sql server بيدعم حاجه زي كدا وينفع تعمل كدا بس اظن بقيت ال DBMS مش بيدعمو
ال JSON مش معمول عشان يكون protocol نقل بيانات كبيرة، تخيل مثلا ال json عشان اكتب بيه 1000 row هكرر اسم ال field كام مرة في كل row. هو مش optimized for low level communication و حجمه كبير، كون ان SQL server بيدعمه مش معناه انه افضل اختيار على طول.
@@ahmedhashem-404 اه تمام مع حضرتك حق شكرا
عظيم! فيه mapstruct بتعمل generation للكود
بالظبط ، سجلت جزء من الفيديو بتكلم عليه بس كان في مشكلة في الصوت شلتها، mapstruct عشان static مش محتاج reflection
لو ممكن تكمل مثل هده الحلقات، ايه مشاكل يلي شفتها في production ♥️
I used mapstruct in the past, and it generate the code during compile time, so i think that's ok to use that librarie?
Exactly, it is not using reflection, since the conversion code is static.
@@ahmedhashem-404 هندسه اولا جزاك الله خيرا على مجهودك و بارك الله في علمك ، طيب في هذه الحالة ايهم افضل استعمال حاجه مثل ماب ستراكت ام كتابة الكود مباشرة
@@ahmedhashem-404 ايضا هل الافضل استخدام Lombok ام ايضا الاستعانه بمحرر الاكواد او كوبايلوت في توليد الاكواد
@ahmedsallam2868 Map struct هيبقى زي انك تكتب كود بنفسك، التشابه بين الوجهين ان الكود معمول static و عارف بالفعل ال structure في ال compile time.
Just discovered your channel, thanks for the good topics. I'm middle java developer but still confused by the usage of datetime in java. Can you please make one video where you explains which Datetime type to use because I see we have LocalDateTime, ZonedDateTime, UTC, sql date, and what might be a wrong a usage of localdatetime in ditributed systems, logs and when a country change its timezone... I think you can make a complete topic about date, and it would be awsome. Thank you
My pleasure, will put it on my todo list, share the channel with your friends for everyone else to get benefit.
@momedalhouma14 The video is out for you th-cam.com/video/4M5iah6vvNQ/w-d-xo.html If not already, don't forget to subscribe and follow on X : x.com/AhmadBinHashem/ :)
@@ahmedhashem-404 Thanks a lot.
nice.
وشرح string, StringBuilder, stringBuffer
بسيطة ان شاء الله
@ahmedelsheikh3490 الفيديو أهو عشان خاطرك th-cam.com/users/shorts1z0WYZfQTNs
ياريت شرح ال concurrency wi index يا باشهمندس
Multi-Threading Fundamentals in Java [Write Production Ready Code] بالعربي th-cam.com/video/FoWVZ_IPFsY/w-d-xo.html الفيديو ده بتكلم على concurrency بالكود و اتكلمت على تفاصيل كتير ، شوف الفيديو و قولي ايه تاني نتكلم عنه
Write multi thread app in Java [Write Production Ready Code] بالعربي th-cam.com/video/ZtcjazRHXKQ/w-d-xo.html ده برضه فيديو تاني concurrency بس ابسط
جميل جدا ياريت حضرتك تستمر في المواضيع دي
تسلم يا هندسة ياريت تنزل فيديوز اكتر علشان نستفاد وربنا يجازيك كل خير
ايه المواضيع اللي عجبتك في ال channel ؟ و ايه المواضيع المفيدة بعدين نتكلم عليها ؟
@@ahmedhashem-404 ال threading انا استفدت منها ياريت لو تشرح ال features فوق ال jdk8 ومواضيع تخص spring زىspring security ويسلام لو تشرح microservices
تابع و ان شاء الله هتلاقي مواضيع منها
الشرح اكتر من ممتاز يا ريت لو نتكلم في حلقة عن reflection في java
في حلقة جاية هتكلم على impact بتاع استخدام ال reflection. الأسبوع ده ان شاء الله
@@ahmedhashem-404 منتظريين الحلقه بفارغ الصبر ❤️❤️❤️
Thanks
Welcome
جزاك الله خيرا يا هندسه
و اياكم
ماشاء الله يابشمهندس استمر انا متابع حضرتك
شرف ليا متابعتك
هو يعنى ايه Vitess
ده Framework شركة TH-cam بنته سنة 2010 عشاني بقى زي wrapper ل MySQL DB و يقدرو يبقى عندهم اكتر من Master MySQLDB شفت الفيديو ؟
طب ليه، محتاج relational DB علشان يحفظ فيديوهات
تفتكر هيخرن ال comment اللي كتبته فين ؟! غير ان لو اعتبرنا ان الفيديو عبارة عن ملف فيديو للتبسيط لكل resolution ، هيعرف ال file path بتاع الفيديو بال resolutions ازاي ؟ غير عندك playlists و علاقة الفيديوهات بالقناة و قصة كبيرة
جميل، على أي أساس، أو كيف احسب إني ممكن احتاجها؟ هل مثلا لو حجم قاعدة البيانات تعدى ١ جيجا مثلا، هل بعدد سجلات معينة؟ هل عدد مستخدمين متزامنين متوقع؟ مثلا انا عندي تطبيق هيستغل في مصنع لكن عدد المستخدمين الإجمالي لن يتجاوز ٣٠ ولكنه سيحتوى على سجلات كثيرة في جدول معين مختص بالاجراءات (في الحقيقة هو pivot) رابط اكتر من جدول مع بعض
خلينا نفكر زي GitHub ، فكرو بس لل migration من MySQL لما ال performance بقى فيه مشاكل و مش عارفين يسرعو ال app عشان ال DB بطيئة مكانش فيه رقم معين حركهم، شايف ان الافضل البساطة في التصميم و حسب الطلب لو ال load زاد و ال DB بطيئة تروح لحاجة زي كدة بس الاول تقسم ال App على اكتر من DB . لو انت بتبني حاجة عارف انها to handle مثلا 30 مليون write a day ، ممكن تبدأ ب Vitess او اي حل تاني scalable .
♥♥♥
عندي سؤال معلش، هو الkey الي بيبقي مع الclient بيبقي الpublic ولا الprivate 😅
public key
ربنا يباركلك ي هندسه
المحتوى اللي تقدمه ممتاز جداً , اذا فيه امكانية تضع مصادر للاستزادة بيكون شيء كويس جداً.💯
Better record from previous one keep doing greats things ya handsa 👌