Over the years the sheer number of tools that are available has become staggering; at least it was for me. I had to consciously make a choice about what I really wanted to work with and in what areas. These were my choices: HTML CSS Javascript Current Version Data Visualization WebGL Much to my surprise, each one of these areas had a much bigger footprint than I thought it did. The list has evolved over time to something like this: HTML Hand-coded Templates Mustache Handlebars CSS Vanilla CSS features are added all the time SCSS Superset of CSS with programming-like...
I've always believed that there is no reason not to make our designs look like print. What makes a good print design and an acceptable web equivalent has changed over time. What looked good in 1994: May not look as good as a modern site or application. Just like our authoring tools and technologies, the design and layout techniques changed based on what we had available at the time. This is what a table-based layout in the early 1990's looked like. It used tables for layout and 1x1 spacer gif images. html Hello welcome to my Internet Web Home Around...
There are many different things that have made me tired as a developer lately. I've seen that we've chosen to specialize in one or more frameworks either because the products you work with are moving towards a given library looking at you, Polymer and Gutenberg or because you've realized a given library does what you need better happened to me with Gulp over Grunt. But there are many areas where we can simplify. We don't need the kitchen sink for every project we create, and huge libraries or moving styling to Javascript when the platform gives you options to accomplish...
Sam Dutton, a Developer Advocate at Google, wrote A Manifesto For Teaching Web Developmenthttps://samdutton.wordpress.com/2018/06/04/a-manifesto-for-teaching-web-development/ as a way to write down his ideas for explaining HTML, CSS, and JavaScript to absolute beginners. As an instructional designer, I'm in agreement with pretty close to 100% of Sam's ideas but would further tailor some of them to make them better. I understand that Sam wrote bullet points but these > For live classes, consider flipped classroomhttps://en.wikipedia.org/wiki/Flippedclassroom techniques. Get students to learn at home with specific goals and requirements then complete activities with supervision in the classroom. Be upfront about the level of commitment...
One thing that I've always been curious about is web workers. I know they are not the same as service workers but I don't really know what they are. So in this post, I'll talk about Web Workers not service workers and what I have learned about them. What are Web Workers Web Workers allow scripts to run in the background, in a separate thread of execution, from the main thread running in the browser. In essence, web workers or workers allow for limited multi threading in Javascript. What need do they fill Because JavaScript is single threaded there are...
When working in Instructional and Presentation Design I remember the way we were taught basic design, to think CRAP. CRAP is the not very polite acronym for these four basic design principles - Contrast - Repetition - Alignment - Proximity Why am I interested in these principles? Whenever working on a presentation it's important to keep people engaged and tell a good story that will engage the audience. It will also let you move the content between formats: PowerPoint to Captivate and self-paced learning and to web presentations. The Principles Now that we've looked at what the principles are and...
Looking back at WebVR I realized how important it's to keep paying attention to technologies that you're interested in or they may change from under your feet. VR and now AR is one of these areas. What it is WebXR is an evolutionary step currently under Origin Trialshttps://github.com/GoogleChrome/OriginTrials/blob/gh-pages/explainer.md, a way to run experiments for a subset of developers using a feature. This allows for rapid iteration and quick feedback but without running the risk of the feature becoming a defacto standard, particularly when the API or feature is not finished. In this context, I'll use WebXR to mean the WebXR...
There may be times when we want to test our application with SSL or want to configure it and use it locally. Even though newer APIs whitelist localhost for development I still would rather have HTTPS/SSL enabled to make sure that other parts of my apps work as intended, particularly since most of the new web APIs require HTTPS to run. My preferred approach is to use the NODEEXTRACACERTS environment variablehttps://nodejs.org/api/cli.htmlclinodeextracacertsfile to give Node the path to a file containing one or more certificates that you want to use. The extra certificates are used, in addition, to the list of...
One of the most intriguing things I've learned about at Google I/O is the Google Maps Platformhttps://cloud.google.com/maps-platform/ gaming offerings and, among those, playable places. The base concept is this: Take Ingresshttps://www.ingress.com/ and Pokemon Gohttps://www.pokemongo.com/ and make them playable worldwide without having to collect data about the structures where you want to place markers for interaction to happen. With that base take out the possibility of playing in inappropriate places like cemeterieshttps://mashable.com/2017/02/17/cincinnati-cemetery-pokemon-go/oisI2FzmfEqC and other private properties where you have not been allowed to play, Google has done the work for us in identifying places where we can run our apps without...
Since I first saw it in AMP, I thought that link rel="canonical" was part of the AMP library. I was surprised to see that it's more than just an AMP thing. In this post, we'll discuss what are canonical links and documents, why we need to use it, and some gotchas to consider before going all in with canonical links. What it is and Why should you use them? There are times when I want to publish the same content in more than one site, like my personal blog and my employer's blog; or I may want to publish content...