Learning Library

← Back to Library

Web-Development

18 items in this topic

OpenAPI: Simplifying REST API Development

  • OpenAPI is a standardized specification (usually in YAML or JSON) that describes the interface of a REST API, detailing resources, endpoints, parameters, data types, and authentication.
  • An OpenAPI definition lets developers—like the new hire “Mark” in the ice‑cream shop example—quickly understand what a REST service does without digging into source code.

Understanding the MEAN Stack

  • The MEAN stack is a full‑stack JavaScript solution for building web applications, analogous to the LAMP stack but using only JavaScript‑compatible technologies.
  • **M** stands for MongoDB, a NoSQL database chosen for its native JSON handling (though other open‑source databases can be used).

Evolving from LAMP to MEAN

  • Jamil Spang, an IBM Cloud developer advocate, introduces the MEAN stack as a modern alternative to the traditional LAMP stack for building full‑stack web applications.
  • He breaks down the MEAN acronym: **M**ongoDB as the NoSQL data store, **E**xpress.js as the Node‑based web framework, **A**ngular as the front‑end single‑page‑application library, and **N**ode.js as the underlying runtime platform.

Understanding the LAMP Stack

  • The LAMP stack—Linux, Apache, MySQL, and PHP—is a free, open‑source software suite that underpins the modern web by providing the core components needed to run websites.
  • Linux serves as the operating system layer, available in many distributions (Ubuntu, Red Hat, SUSE, etc.) and runs on any hardware—from physical servers to cloud instances.

Intro to Django for Python Developers

  • Jamil Spain, an IBM Cloud Developer Advocate, introduces Django as a high‑speed MVC framework for building Python web applications.
  • He explains that creating a web server from scratch in plain Python requires manually importing HTTP libraries, opening ports, defining endpoints, handling requests, and keeping the server running.

REST vs GraphQL: Talkative vs Reserved

  • The speaker uses an analogy of two coworkers—talkative “R” (REST) and concise “G” (GraphQL)—to illustrate that REST returns all data by default while GraphQL lets clients request exactly what they need.
  • Both REST and GraphQL are approaches to building APIs, which enable different applications (like web or mobile clients) to communicate with servers over the internet.

Building an API on Microgateway

  • The architecture consists of a cloud‑based API Management node (on Bluemix) that the developer accesses via a browser, which forwards calls to a locally‑run standalone microgateway that can then reach internal or external resources.
  • After logging into Bluemix, you create a new API (named “requote”), set it to HTTPS, define its output as HTML, and initially remove any security definitions for simplicity.

IBM BPM 8.5.7 Theme Support Overview

  • IBM BPM 8.5.7 introduces “theme support,” a centralized way to update the look‑and‑feel of all UI components in a process app without republishing a new app version.
  • Themes are built on LESS, an open‑source CSS pre‑processor that allows developers to define reusable variables which are compiled into standard CSS for browsers.

REST API Basics and Benefits

  • A REST API (Representational State Transfer) is a standardized, stateless architecture that enables client‑server communication via web‑based endpoints.
  • Its main benefits are simplicity and uniform data formatting, scalability without maintaining session state, and high performance through built‑in caching support.

Middleware: The Hidden Engine Behind E‑commerce

  • Middleware is the hidden layer of software and hardware services that coordinate tasks—from browsing a catalog to payment processing and shipping—to deliver a seamless user experience.
  • In an online purchase, middleware integrates the mobile app, store front, image repository, inventory service, payment gateway, warehouse system, and logistics provider, each acting as modular components that can be reused elsewhere.

Understanding LAMP, MEAN, and MERN Stacks

  • The LAMP stack (Linux, Apache, MySQL, PHP) is a common web platform where Linux runs the OS, Apache serves web requests, PHP handles business and presentation logic, and MySQL provides the data backend.
  • When a browser makes a GET request, Apache routes the request to PHP scripts, which query MySQL for data and generate the full HTML page that is sent back to the user.

GraphQL: Solving Over- and Under-Fetching

  • GraphQL provides a single API endpoint that lets front‑end developers fetch exactly the data they need, eliminating both over‑fetching and under‑fetching problems.
  • It is a query language for APIs, analogous to SQL for databases, allowing clients to specify the exact fields they want in one request.

API Management: Flexibility, Security, Analytics

  • API management adds crucial flexibility, security, and analytics to modern API architectures, making it a must‑have component for both enterprises and startups.
  • APIs can be split into two categories: **service APIs** that directly access systems of record and **interaction APIs** that sit on top of service APIs to enable higher‑level operations.

Simplifying API Use Cases and Onboarding

  • Alen Glickenhouse (IBM API Business Strategist) outlines a step‑by‑step approach to identifying API use cases, stressing the importance of starting with simple scenarios before tackling complex ones.
  • He categorizes potential API opportunities into six groups, beginning with “Mobile or Internal Development,” where APIs can serve generic data (e.g., location, interest rates), personalized data (e.g., account balances), and device‑specific data (e.g., GPS, camera).

Apache & NGINX: Layer‑7 Reverse Proxies

  • Apache and NGINX are free, open‑source HTTP servers that are also commonly used as reverse‑proxy/load‑balancer front‑ends for web applications.
  • Modern high‑traffic sites typically place multiple identical web servers behind a front‑end load balancer, which distributes incoming requests to avoid overloading any single server.

How DNS Translates Domains to IPs

  • DNS (Domain Name System) translates human‑readable domain names (e.g., ibm.com) into numerical IP addresses that computers use to locate resources on the Internet.
  • A DNS resolver acts like a phone book, matching a name to its corresponding IP number so users can access sites without remembering numeric addresses.

How CDNs Speed Up Web Content

  • A Content Delivery Network (CDN) is a service that accelerates internet content delivery, making websites load faster for users.
  • When a website is hosted on a single origin server (e.g., in Dallas), users far away (Sydney, London, etc.) suffer high latency because each request must travel long distances, measured in hundreds of milliseconds.

Fast LLM-Built Election Vote Tracker

  • The speaker launched a new site, tracker.vote, built with LLM‑assisted tooling in collaboration with a friend.
  • They turned an idea into a production‑ready, custom‑domain React app in just over two hours.