Dublin Library

The Publishing project

AMP: Hope and Fears (Part 3)

Conclusion I wrote the tweet below as a response to my original tweet. No, @AMPhtml hasn’t fully sold me on it. Too many open issues in AMP that are easy to do in non-amp. Looking at component creation and how hard it is— Carlos Araya @elrond25 April 6, 2018 As I've mentioned throughout this post the technology behind AMP is not revolutionary. It's a reaction to a problem on the mobile web and it has been taken as a way to gate keep and restrict what can be done on the web. There are many unanswered questions about AMP and...

Continue reading →

AMP: Hope and Fears (Part 2)

Technical questions There are technical questions that came up when researching AMP and writing this post a few more technical questions Converting your content? In talking to people at the Roadshow I now understand that AMP is a testbed to make things better and then bring it back to the wider web community; this is an important goal. I just have issues with the way AMP is doing this. The example below is a basic sample HTML document conforming to the AMP HTML specification. html Sample document h1 {color: red} { "@context": "http://schema.org", "@type": "NewsArticle", "headline": "Article headline", "image": "thumbnail1.jpg"...

Continue reading →

AMP: Hope and Fears (Part 1)

This essay has evolved from my notes and comments from the AMP Roadshow in Sunnyvale on April 4 and feedback received since. Any factual errors are mine. Feedback is always welcome. The questions/issues I have are in bold throughout the rest of the article. at the amproadshow learning about AMP, what's next and what cool things you can do with it.I'm ambivalent about AMP and am hoping to be convinced otherwise— Carlos Araya @elrond25 April 4, 2018 What problem is AMP trying to solve? Particularly since the introduction of AMP stories and the loosening JavaScript restrictions on adding JavaScript to...

Continue reading →

Using video instead of animated gifs

Animated GIFs are a good way to demonstrate short sequences of events or actions in your browser or application. The flipside is that the files tend to be unnecessarily large. One way to reduce the file size is to convert it to video. In this post, I'll take a look at the conversion and display of this animated "gifs". For the video conversion, we'll use FFMPEGhttps://www.ffmpeg.org/ command line utility as we've done with most of the prior work posted here. We'll use 2 video codecs to replace the GIF file: MP4 and VP9. MP4 first We do care about the...

Continue reading →

Async and Defer Scripts

Loading Javascript may slow down your page as the browser will follow several steps for each script the page links to and not continue until the script is fully parsed and all the associated resources loaded: The browser has no way of knowing what, if any, changes it needs to make to the page based on the script so it'll download and parse the script even if it ends up not using any of it in rendering the page itself. There are two ways we can bypass the problem of the blocking script. Which one you use will depend on...

Continue reading →

Evolving Complexity: Conclusion

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...

Continue reading →

Evolving Complexity: Design

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...

Continue reading →

Evolving Complexity

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...

Continue reading →

Technical Training and The Training Manifesto

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...

Continue reading →

Researching (Web) Workers

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...

Continue reading →