
Pokemonwe, 2022. Pokemonwe. https://pokemonwe.com/harry-potter-15-things-you-never-knew-about-filch-and-mrs-norris/
In this episode, we’ll evaluate two different pivotal technologies in web development: LAMP and MEAN. Whether you’re advancing in your web career, planning to study web development, or preparing for an interview, understanding these skills is crucial. I’ve symbolised MEAN as Mr Argus Flitch, drawing a parallel to his ‘mean’ nature in the Harry Potter series because he was always MEAN to Harry Potter while he was trying to save our world. LAMP, on the other hand, represents the LAMP technology. So, let’s get started!
Sorry, I forgot to explain why the title has a third element about the caption. This episode will teach you an essential skill: writing academically by following the API style of referencing. That’s why I had to reference where I got that photo from, and the entire script of this episode will be cited and referenced professionally.
Let’s embark on this exploration together! I hope I did not forget anything else!
1. An Overview:
Technology stacks allows for building a website using a full stack framework which results in a working data driven platform, besides facilitating the job of front-end, back-end and full stack developers (Holmes, 2015). Additionally, each technology stack is considered a package, and each letter stands for a separate entity (Nixon, 2014). MEAN and LAMP stacks will be critically evaluated in the following lines in terms of advantages and disadvantages in each of their aspects.
2. Databases aspects (MONGO vs MySQL):
MEAN uses MONGO, which is a document binary JSON storing database, it does not use columns, but each row is an entity of what a document is, including data and description (Holmes, 2015). By other means, according to Louridas (2016), MONGO uses collections rather than tables. However, MONGO is not suitable for connected transactions queries because it processes data independently and does not implement a structural way of organizing data (Holmes, 2015). On the other hand, LAMP uses MySQL which is a light database responsible for quicker performance (Crampton, 2005). The combination of PHP and MySQL in terms of performance is described by Crampton (2005) as a synergistic combination, while according to Louridas (2016) MySQL is a relational database which is suitable for transactions queries and payments processing. Additionally, according to (Jhonson, 2022), MySQL is quicker than MONGO especially in large projects and because LAMP uses more processing power. However, in case of flooding read request MONGO will be faster than MySQL (Heike, 2019). Moreover, from a security prospective MySQL is easier to be infiltrated by hackers (Kapoor, 2022).
3. Server’s aspects (NodeJS vs Apache):
NodeJS is a single-threaded technology which assigns one thread for all web browsers but allows the interaction with the thread only in case of requesting something from the website (Holmes, 2015). Simon (2015) describes the scenario as a bank operating with one teller who gives the tasks that require time to the back office and deals with the less time-consuming tasks on his own. Additionally, as mentioned by Holmes (2015), NodeJS is fast and uses less server resources when compared to other server providers. However, being a single-threaded technology requires the code to be written smoothly and proficiently to prevent the blockage of the requests flow because it is a central process. In addition to, single threads do not recall users preferences (Holmes, 2015). Luckily, Express backend framework is used in MEAN technology to facilitate the use of NodeJS by configuring the web server and allowing it to process queries, besides building directory structure to provide users with statically requested files to maintain the requests flow, for example, the style sheet. Moreover, express solves the problem of single-threaded technology by using sessions to store user’s preferences (Holmes, 2015).
Apache is used by the LAMP stack technology, and it is multi-threaded, so every web session will be assigned a thread or a memory which can make websites respond slowly in certain times of the day when there are more browsing sessions going on (Holmes, 2015). While MEAN is cost-effective, LAMP is still cheaper because multi-threaded technologies are cheaper to install even on the cloud (Jhonson, 2022) . Additionally, Apache offers various modules which are easy to install, for example, SSL (Kapoor, 2022).
4. Programming language aspects (Angular JS vs PHP):
MEAN is JavaScript based stack, allowing for writing the code of both front-end and back-end disciplines in JavaScript (Holmes, 2015). Perhaps, its’ popularity is increasing because it relies on JavaScript, which is commonly understood by most developers, besides it is attainable for developers to become full stack using only one language across the two disciplines of web development (Nixon, 2014). Angular is used for the front-end discipline, it designs websites in a single page application way which saves resources by holding all the data in the web page and leaving the server to process static files and requests (Holmes, 2015). By other means, this approach will require the user browser to work harder instead of relying on the hosting server (Holmes, 2015). However, coding bugs can lead to the whole website to stop working and some browsers does not support JavaScript (Holmes, 2015). PHP as a programming language is flexible and easy to master and is supported by various libraries (Kapoor, 2022). However, being an interpreted language rather than a compiled language consumes some time of the developers while coding (Kapoor, 2022).
5. Miscellaneous aspects:
MEAN is easier than LAMP in terms of building an API data driven aspect, besides being able to operate on different operating systems (Kapoor, 2022). However, LAMP being a Linux based stack, offers more security grants (Kapoor, 2022). Additionally, Linux could be harder to learn while building the website unlike using windows or Mac while using MEAN (Kapoor, 2022). According to Louridas (2016), MEAN community support is more abundant in startups, while LAMP have a mature and larger community support (Louridas, 2016).
6. References :
Crampton, C. (2005). A Comparative Analysis of LAMP and Microsoft . NET Frameworks. Semantic scholar. Retrieved from https://www.cs.ru.ac.za/research/g01C1073/images/litreview_final.pdf
Heike, C. (2019). LAMP vs. MEAN: Which stack is right for you? Bitbucket. Retrieved from https://bitbucket.org/blog/lamp-vs-mean-which-stack-is-right-for-you
Holmes, S. (2015). Getting MEAN with Mongo, Express, Angular, and Node. Manning Publications.
Jhonson, E. (2022). LAMP Stack vs. MEAN Stack: Which Web Development Stack is Right for You? Nerd For Tech. Retrieved from https://medium.com/nerd-for-tech/lamp-stack-vs-mean-stack-which-web-development-stack-is-right-for-you-ce8cfc22e282#:~:text=The%20acronym%20LAMP%20refers%20to,build%20websites%20using%20JavaScript%20technologies.
Kapoor, A. (2022). MEAN Stack vs. LAMP Stack: Which One to Choose for Web App Development? Enlear Academy. Retrieved from https://enlear.academy/mean-stack-vs-lamp-stack-which-one-to-choose-for-web-app-development-b0719487030d
Louridas, P. (2016). Component Stacks for Enterprise Applications. IEEE Software, 33(2), 93-98. Retrieved from https://doi.org/10.1109/MS.2016.57
Nixon, R. (2014). Learning PHP, MySQL & JavaScript. O′Reilly.