WebDev Track

Story, Bites, and Repositories

Story Index Prologue Introduction Models Models of structure and semantics Data Types & instances Operations Callable objects Structures Class structure Libraries Standard libraries References Resource links    
Bite Index Introduction Technologies HTML HyperText Markup Language CSS Cascading Style Sheets, selectors, conflict resolution JavaScript JavaScript (ECMAScript), functions, objects, events Glossary Glossary of WebDev terms    
Figure 1. JavaScript Execution
"A user interface is like a joke. If you have to explain it, it’s not that good."
- Martin LeBlanc

There are four ways of viewing WebDev content in this site:
  1. WebDev Story
    An ebook with seven chapters that covers WebDev programming at intermediate level.
  2. WebDev Bites
    A large collection of pages each focused on one feature of the WebDev programming language, starting with basics.
It's easy to sample each of these views by using the links above, or more selectively, using links in the WebDevExplorer panel on the left (if you don't see it, click on page header).
What I like about WebDev
The WebDev language has some very interesting ideas about building memory and data-race safe programs. Program source compiles to native code and runs directly in the process created for it. Its safety mechanisms, enforced at compile-time, make getting started slower than for some other languages, but the compiler error messages are very good, making learning much easier as long as you understand WebDev's basic models. WebDev Highs and Lows

The code above on the right illustrates a WebDev "Hello World" function, often the first thing you encounter when learning a new language. This page is focused on pointing to discussions of WebDev models and code examples. It has most of the things you will need to start WebDev programming quickly.

Table 1. WebDev Resources from this site

Site Resources Content
WebDev Repositories Index of all the WebDev code repositories
WebDev Models Summary of features with screenshots and examples - pdf
WebDev Story
Index at upper right on this page.
WebDev ebook in 7 chapters
first chapter in WebDev Story
WebDev Bites
Index at upper right on this page.
Dozens of Code Bites about WebDev
first WebDev Bite <-- good place to go after this page
WebDev Glossary Definitions of common terms
WebDev FlashCards Basic types and data structures
Bits of Code Compares small C++, WebDev, C#, Python, and JavaScript codes  
WebDev Playground online compiler
Code Examples Content
WebDev Repositories Index into WebDev Repositories
WebDev Code examples List of WebDevBites code examples, WebDevPlayground code examples, WebDev Basic Demos Repository
online code execution WebDevPlayground, tutorialspoint
Other Resources Content
WebDev Guide Definition and examples of WebDev collections, iterators, and concurrency constructs.
Tooling Using Visual Studio Code to create and build WebDev code
WebDev home site Download and install, learn WebDev
WebDev user's forum Create an account and you can log-in, read, and post messages and questions.
The WebDev Reference Semi-formal, but surprisingly readable, reference for WebDev
WebDev API Guidelines Guidelines for crafting WebDev code, from the source
Other intermediate and advanced resources
How to learn modern WebDev A collection of links to explorations of intermediate and advanced language materials
idiomatic WebDev resources Annotated links to articles and examples of community accepted styles and patterns for WebDev code.
 
You can find videos covering some of the topics in Table 1. and Table 2. using the "Videos" link in the top menu. First WebDev Bite is a good next step after this page.

Exercises

  1. Write a WebDev program to find the largest file in a specified directory tree, using walkdir crate from crates.io.
  2. Ammend Project #1 by accepting arguments from the command line, using args crate.
  3. Use ChatGPT to create a directory traversal crate and use that instead of walkdir.
  4. Write a WebDev program to read a source code file and count the number of lines and number of scopes for each function. You can count scopes by counting open braces "{". Start by searhing for fn and then read each line searching for "{" and "}". Push each open brace on a stack, and pop when a closed brace is encountered. When the stack is empty, the end of the function has been reached.
  5. Modify Project #4 by counting lines and scopes for each file in a directory tree rooted at a specified folder, usually named "src".