Professor Ahmed Salem Reviews
Prof: Ahmed Salem / Fall 2022
May 4, 2023
This course is quite interesting as it typically revolves around web development. I personally had an interesting project which was rendering requests to a webpage in live time, however the experience was marred by bad group members. Although this was the case, I enjoyed the outcome for myself as I managed to learn a lot specifically with Web sockets and Server Sent Events. Due to this reason I would advise to put an actual effort into ones own project as it can be a great boost to your resume. The project work in this course is an excellent way to develop one's technical skills and gain practical experience in web development. With the right group members you can maximize the learning potential of this course and achieve impressive results.
Ahmed's teaching style was ineffective as he essentially read his PowerPoint slides verbatim during the online Zoom course. The diagrams he drew with a mouse were also difficult to understand. It's important to choose group members wisely to ensure a positive experience in the class. While the goal of the course was to learn the SDLC and Agile methodologies, it was difficult to do so under this professor's instruction. Furthermore, a significant part of the course was intended to teach students how to work effectively in a team environment. Therefore, it is crucial to choose group members wisely.
Overall I would advise against Ahmed Salem. I will dislike this professor due to him giving me an A-, do not expect an A+ from him. Make sure you choose your group members VERY wisely, I got stuck with a horrible group and essentially coded 85-90% of the project on my own. Had one other member who did work and helped, the other 4/6 were useless. Repository showed me having committed over 50k+ lines of code, and I explained/showed this to the professor and he essentially said it was not his problem. This professor ruined my 4.0 here at CSUS. I now sit at a 3.979 because of him. Pros: You are allowed to choose whatever tech stack you choose. Cons: Style of teaching is ineffective for agile methodologies, select a better professor to learn these concepts better. Of course CS is self teachin...read more
I had prior web dev experience so I had I guess self-guidance as to what to utilize. The professor does slightly help if you ask, but CS is self studying so you will have to dive into web dev. Pick up some web dev skills on your free time, MERN stack is good, Flask something that'd be of benefit. As well as Frontend skills HTML, CSS and JS. Exams are based off his PowerPoint slides so they aren't too difficult (and are open note), 35% for each midterm (2) and other 30% is dependent on your project and presentation. So do well on everything.
Prof: Ahmed Salem / Fall 2021
Dec 11, 2021
An essential course that teaches about developing software in groups and how to efficiently manage this process. Learn how to professionally design and produce software for a real client. Your software, if seen fit, is used by a real company/organization which gives an authentic feel and motivates you more because someone is ultimately counting on you to do well.
This semester, we were responsible for coding software that directly manipulated PDF files for CalTrans. I learned how to read API's and learned a couple new languages which took some major effort to pull off, but is extremely useful since it broadened my abilities to new areas I never expected to find myself in.
Salem is an excellent professor. He is probably one of the most respectful Computer Science professors you will ever meet. Inclusive, listens to feedback, flexible for students who need help, and puts everything you need on canvas. His handwriting is admittedly quite messy, but does not take much away from the learning experience.
The course itself is very easy to learn and follow; exams are simple and open note / open book. The real beast is the semester project. The most important moment of your entire semester is when you choose your group members, of which you can have about 5 or 6. I ended up having 6 people in my group, of which 2 dropped the class and the other 3 contributed nothing and tried to slap their names on my code. Thankfully, if you complete all your code on sites like GitHub or Bitbucket, you can track who does what which proves who did the work.
Prof: Ahmed Salem / Spring 2021
Dec 4, 2021
This class did an amazing job of providing a real world opportunity to make a software product. My class created an e-commerce website for a client, and I learned a lot about the entire SDLC while doing so. Salem is a solid choice because he wants to find a real client with a real project for the class to work on.
Lectures covered a lot of software engineering fundamentals. Stuff like software modeling, UML, and the agile methodology. Lectures were interesting and they supported the semester long project.
Professor Salem is one of the most caring professors I've ever had. He is really there to coach you through the project and challenge you at the same time. Very inclusive and very real.
If you take Salem, chances are that your class is assigned a project that might be like nothing you have ever done. As a result, I would say this class is a bit challenging. However since you have a team to work with, you are not going at this alone. You will come out a better software engineer after this class.