ثريد عشوائى جدا هكلم فيه عن شوية نصايح للمبتدئين فى مجال software engineering وخصوصا الطلبة
[1]
دى ممكن تبقى حاجة شكلها بديهى جدا بس بجد من اكتر الحاجات ال بتبقى overlooked عند ناس كتير، اهم حاجة فى اى مجال فى الدنيا هى الأساسيات، وانك تبقى فعلا فاهم الأساسيات دى مش مجرد قارى كلام وخلاص. حاجات مثلا زى Data structures and algorithms او مثلا Databases او operating system
دى ممكن تبقى حاجة شكلها بديهى جدا بس بجد من اكتر الحاجات ال بتبقى overlooked عند ناس كتير، اهم حاجة فى اى مجال فى الدنيا هى الأساسيات، وانك تبقى فعلا فاهم الأساسيات دى مش مجرد قارى كلام وخلاص. حاجات مثلا زى Data structures and algorithms او مثلا Databases او operating system
[1.1]
الفهم الكويس لل concepts فى الحاجات دى مش بس بيدى معلومات قيمة تقدر تبنى عليها بس بيوسع مدارك الشخص ويخليه عنده قابلية انه يستوعب حاجات تانية اعقد من كده.
الفهم الكويس لل concepts فى الحاجات دى مش بس بيدى معلومات قيمة تقدر تبنى عليها بس بيوسع مدارك الشخص ويخليه عنده قابلية انه يستوعب حاجات تانية اعقد من كده.
[2]
الموضوع بياخد وقت كبير جدا. كتير من الشباب بيجى لسه فى أولى ويبقى عايز يى skip كل حاجة ويتعلم حاجات معينة عشان شايف انها trendy او حد صاحبه شغال فيها او او او، انا فى رأى ده بيسبب تشيت وبيخلى ال knowledge الى عند الى بيعمل كده فيها gaps كبيرة
الموضوع بياخد وقت كبير جدا. كتير من الشباب بيجى لسه فى أولى ويبقى عايز يى skip كل حاجة ويتعلم حاجات معينة عشان شايف انها trendy او حد صاحبه شغال فيها او او او، انا فى رأى ده بيسبب تشيت وبيخلى ال knowledge الى عند الى بيعمل كده فيها gaps كبيرة
[2.1]
وبيمنعه يبقى زى ما بيقولوا كده well-rounded engineer الى هو حد عند خلفية كويسة عن اساسيات المجال بغض النظر عن التخصص الى ممكن يركز عليه قدام فى الشغل.
وبيمنعه يبقى زى ما بيقولوا كده well-rounded engineer الى هو حد عند خلفية كويسة عن اساسيات المجال بغض النظر عن التخصص الى ممكن يركز عليه قدام فى الشغل.
[3]
الاهم من تعلم اى حاجة هو ال practice والاهم من ال practice هو ال consistency،، ناس كتير بتفكر انه خلاص طالما جرب حاجة مرة او مرتين فهو خلاص كده مفيش حاجة يتعلمها تانى.
الاهم من تعلم اى حاجة هو ال practice والاهم من ال practice هو ال consistency،، ناس كتير بتفكر انه خلاص طالما جرب حاجة مرة او مرتين فهو خلاص كده مفيش حاجة يتعلمها تانى.
[3.1]
انا فى رأى لو عملت نفس الحاجة كذا مرة بنفس الطريقة يبقى انت مطورتش، ديما بيبقى فى غلطات ت avoid وحاجات كتير ممكن ت enhance او تعملها بطريقة مختلفة وتجرب مشاكل جديدة.
انا فى رأى لو عملت نفس الحاجة كذا مرة بنفس الطريقة يبقى انت مطورتش، ديما بيبقى فى غلطات ت avoid وحاجات كتير ممكن ت enhance او تعملها بطريقة مختلفة وتجرب مشاكل جديدة.
[4]
برضه ناس كتير بتركز جدا على لغات وكده, يقولك انا java developer او انا php developer او يحصر نفسه فى كونه "coder" فى الحقيقة محدش عايز الشخص ده، فى الحياة العملية، بنبقى عايزين حد فاهم ال concepts المستخدمة
برضه ناس كتير بتركز جدا على لغات وكده, يقولك انا java developer او انا php developer او يحصر نفسه فى كونه "coder" فى الحقيقة محدش عايز الشخص ده، فى الحياة العملية، بنبقى عايزين حد فاهم ال concepts المستخدمة
[4.1]
مثلا backend developer فاهم يعنى ازاى يعمل design لى system يقدر يى scale كويس، يقدر يى tolerate مشاكل ممكن تحصل، حد فاهم operating systems و distributed systems بيكتب بقى الكلام ب java ب go ب أى حاجة، نقطة فرعية جدا. ان تكون flexible فى النقطة دى حاجة مهمة جدا عمتا
مثلا backend developer فاهم يعنى ازاى يعمل design لى system يقدر يى scale كويس، يقدر يى tolerate مشاكل ممكن تحصل، حد فاهم operating systems و distributed systems بيكتب بقى الكلام ب java ب go ب أى حاجة، نقطة فرعية جدا. ان تكون flexible فى النقطة دى حاجة مهمة جدا عمتا
[4.2]
ده مش معناه اهمال تعلم لغة معينة، لا اتعلم لغة واتنين بس خلى تعلم اللغة يبقى وسيلة وانت بتتعلم concept مثلا بتتعلم go او rust عشان تكتب حاجة فيها concurrency, بتتعلم مثلا node او rails عشان تجرب تعمل API بتتعلم python عشان تجرب مثلا machine learning
ده مش معناه اهمال تعلم لغة معينة، لا اتعلم لغة واتنين بس خلى تعلم اللغة يبقى وسيلة وانت بتتعلم concept مثلا بتتعلم go او rust عشان تكتب حاجة فيها concurrency, بتتعلم مثلا node او rails عشان تجرب تعمل API بتتعلم python عشان تجرب مثلا machine learning
[4.3]
او بتتعلم ++C عشان ت practice حاجة زى problem solving فا بتبقى جربت حاجات كتير بس الاهم انك بتتعلم valuable concepts مش بس تعرف تعمل نفس الحاجة بلغات مختلفة، الموضوع مش ترجمة.
او بتتعلم ++C عشان ت practice حاجة زى problem solving فا بتبقى جربت حاجات كتير بس الاهم انك بتتعلم valuable concepts مش بس تعرف تعمل نفس الحاجة بلغات مختلفة، الموضوع مش ترجمة.
[5]
متبقاش قاعد طول الوقت بتفكر والله انا ازاى اشتغل فى شركة x او شركة y وتقعد تسأل كذا حد اعمل ايه ومتكملش اى حاجة لآخر. كدا كدا فى حاجات general و essential لى كل الناس، والحاجات بتاخد سنين عشان تى master فعلا.
متبقاش قاعد طول الوقت بتفكر والله انا ازاى اشتغل فى شركة x او شركة y وتقعد تسأل كذا حد اعمل ايه ومتكملش اى حاجة لآخر. كدا كدا فى حاجات general و essential لى كل الناس، والحاجات بتاخد سنين عشان تى master فعلا.
[5.1]
انا رأى اول سنتين فى الكلية احسن حاجة يبقوا spent على ال fundamentals بالطريقة الى كنت بتكلم بيها. لاسف معظم الكليات فيها مواد ملهاش لازمة بتأخر مواد تانية ليها لزمة بتاخدها بعدين، فا ممكن الموضوع ده يطول لحد سنة تالتة مثلا
انا رأى اول سنتين فى الكلية احسن حاجة يبقوا spent على ال fundamentals بالطريقة الى كنت بتكلم بيها. لاسف معظم الكليات فيها مواد ملهاش لازمة بتأخر مواد تانية ليها لزمة بتاخدها بعدين، فا ممكن الموضوع ده يطول لحد سنة تالتة مثلا
[5.2]
بعد كده التركيز المفروض يبقى على انك تحاول تاخد خبرة عملية، فى internship بقى فى open source contribution فى اى حاجة. المهم يبقى عندك plans منطقية بتكملها مش بتسبها كل شويه
بعد كده التركيز المفروض يبقى على انك تحاول تاخد خبرة عملية، فى internship بقى فى open source contribution فى اى حاجة. المهم يبقى عندك plans منطقية بتكملها مش بتسبها كل شويه
[6]
حاول متبقاش شايف انه والله الكلية دى تضيع وقت والكلام ده، الحقيقة ان topics اغلب ال curriculums هى fundamentals محتاجها فعلا او حاجات ممكن تبقى mental exercises حلوة تخليك حد اذكى وأسرع فى فهم حاجات تانية
حاول متبقاش شايف انه والله الكلية دى تضيع وقت والكلام ده، الحقيقة ان topics اغلب ال curriculums هى fundamentals محتاجها فعلا او حاجات ممكن تبقى mental exercises حلوة تخليك حد اذكى وأسرع فى فهم حاجات تانية
[6.1]
لكن اغلب courses الجامعات بتبقى قشور لأنها معمولة انها تكون introduction فا الى محتاج تعمله هنا انك دايما تى take the extra mile زى ما بيقولوا. حاول تبحث اكتر، وتعرف تفاصيل اكتر وايه background الحاجات وأهم حاجة ايه الجديد فيها لان اغلب ال textbooks بتكون outdated
لكن اغلب courses الجامعات بتبقى قشور لأنها معمولة انها تكون introduction فا الى محتاج تعمله هنا انك دايما تى take the extra mile زى ما بيقولوا. حاول تبحث اكتر، وتعرف تفاصيل اكتر وايه background الحاجات وأهم حاجة ايه الجديد فيها لان اغلب ال textbooks بتكون outdated
[6.2]
وبرضه مهم جدا تعرف ايه ال best practices فى ال industry لان برضه اغلب ال textbooks بتكون academic بزيادة ومش ديما بتبقى عملية. ودكاترة الجامعة اغلبهم مركزين فى ال academia ومش ديما بيبقوا updated مع ال industry. دى حاجة محتاجة انك مطلع وبتسأل ناس او بتدرب فى شركات وكده.
وبرضه مهم جدا تعرف ايه ال best practices فى ال industry لان برضه اغلب ال textbooks بتكون academic بزيادة ومش ديما بتبقى عملية. ودكاترة الجامعة اغلبهم مركزين فى ال academia ومش ديما بيبقوا updated مع ال industry. دى حاجة محتاجة انك مطلع وبتسأل ناس او بتدرب فى شركات وكده.
[7]
اخر حاجة ودى نقطة جدالية شويه، فا ده رأى الشخصى، don't share your plans too early، لو عندك goal استنى لما تحققه قبل ما تحتفل بتنفيذ اول خطوة، الى بيحصل انك بتحس ب fake satisfaction كأنك خلصت خلاص وفى الحقيقة انت لسه معملتش حاجة.
اخر حاجة ودى نقطة جدالية شويه، فا ده رأى الشخصى، don't share your plans too early، لو عندك goal استنى لما تحققه قبل ما تحتفل بتنفيذ اول خطوة، الى بيحصل انك بتحس ب fake satisfaction كأنك خلصت خلاص وفى الحقيقة انت لسه معملتش حاجة.
[7.1]
حط لنفسك standard الحاجات الى انت proud بيها، شير انك خلصت مثلا كتاب معين مش لما تقرا اول صفحة. ادى لنفسك حافز انك تفضل مكمل عشان تحتفل بعدين بحاجة ليها معنى وقيمة. Raise your own bar.
حط لنفسك standard الحاجات الى انت proud بيها، شير انك خلصت مثلا كتاب معين مش لما تقرا اول صفحة. ادى لنفسك حافز انك تفضل مكمل عشان تحتفل بعدين بحاجة ليها معنى وقيمة. Raise your own bar.
دى شويه thoughts عشوائية من واقع تجربتى. لو حد مهتم يسأل اكتر عن حاجة معينة ابقى سعيد لو اقدر اساعده.
جاري تحميل الاقتراحات...