The XY ProblemThe XY problem is asking about your attempted solution rather than your actual problem. This leads to enormous amounts of wasted time and energy, both on the part of people asking for help, and on the part of those providing help.tagged: problemssolutionsanalysis15-08-2017
UI Testing with Nightwatch.js, Headless Chrome, and Docker: Part 2In Part 1, I discussed running Selenium and Chrome headless mode on Docker. Originally the plan was to use AWS CodePipeline and AWS CodeBuild to run the Docker container and the smoke tests for my website.tagged: nightwatchdockerchromeheadless15-08-2017
Frontend Testing Zoo - Or, Nightwatch without Selenium - 5π - fish's blogWhat I always find hardest to figure it when it comes to unknown systems, it’s ‘how things fit together’. These project might have great documentation, but how the ecosystem plays together is usually left as an exercise for the reader. This happened to me again when diving into frontend testing. I figured out how to get nightwatch+selenium-standalone+chromedriver+chrome working somehow, without fully understanding each part in the puzzle. I went with Nightwatch because I like the syntax and it seems one of the obvious options nowadays. That works until I updated some dependencies and broke everything again. So I took some time to figure out how these things fit together and what is really needed for me tests. I’ve learned that Selenium is the godmother of modern frontend testing. It’s a framework with bindings for multiple languages. To decouple the server from the actual browsers, it invented “Selenium RC” as a protocol. That lead to the development of the WebDriver W3C standard which replaces Selenium RC is newer versions and is implemented for the most common browsers (Chrome -> Chromedriver, Firefox -> FirefoxDriver).tagged: nightwatchseleniumpipelineheadless15-08-2017
E2E testing with headless Chrome and Nightwatch - Pietari Heino [] extreg.comSetting up End-to-End testing (for Nyssetutka.fi) using Nightwatch.js, Selenium and ChromeDriver and running the tests in a headless Chrome instance was super easy.tagged: nightwatchpipelinee2eheadlesschrome15-08-2017
Pipeline Steps ReferenceThe following plugins offer Pipeline-compatible steps. Each plugin link offers more information about the parameters for each step.tagged: pipelinejenkinsdevops14-08-2017
PipelineThis chapter will cover all aspects of Jenkins Pipeline, from running Pipelines to writing Pipeline code, and even extending Pipeline itself.tagged: jenkinspipelinedevops14-08-2017
TC39, ECMAScript, and the Future of JavaScriptTC39 means Technical Committee number 39. It’s part of ECMA, the institution which standardizes the JavaScript language under the “ECMAScript” specification. The ECMAScript specification defines how JavaScript works on a discrete step-by-step basis. Among other things, the specification explains:tagged: 11-08-2017
Progressive Image RenderingStephan Lavavej has a great page outlining the difference between fancy interlacing and plain old progressive rendering: There are four ways to transmit an image over the Internet. Over a fast connection there won't be any apparent difference, but over a modem connection the difference is stunningly obvious. Choosing the right way can make your connection seem much faster than it really is. Wait until every bit of image data has been sucked through the modem before displaying the whole image. So blindingly dumb that not even Internet Explorer does it. Display image data as it is received, resulting in a top-down filling in of the image. One variant -- the one that everyone has seen -- of JPEG does this. This is noninterlaced display, and both GIF and PNG are capable of it as well. Non-interlaced images are smaller than interlaced images. Use a one-dimensional interlacing scheme. This is how GIF interlacing works. Every eighth horizontal line is transmitted in the first "pass", filling up the dimensions of the image in 1/8th of the time that the entire image will take to download. The next pass transmits every fourth line, making the image less distorted. The next pass transmits every second line, making the image even less distorted, and the fourth and final pass transmits the remaining lines. Use a two-dimensional interlacing scheme. This is how PNG interlacing works. Instead of four passes through the image, PNG makes seven passes. In 1/64 of the time that the whole image will take to display, one pass is already completed, showing the image in a very rough manner. Successive passes fill in more information, never distorting the pixels by more than a factor of two to one. Here's a demo of simple progressive as-received rendering: And here's a demo of the superior PNG style two-dimensional interlaced rendering: You don't get this for free, of course -- turning this feature on adds about 20% to the size of PNG images, and about 10% to the size of JPEG and GIF images. Whether this improved rendering behavior is worth the bandwidth cost I leave as an exercise to the reader. I am not aware of any browsers that actually bilinearly interpolate the low-resolution incremental images, as shown in the sample screenshots on Stefan's page. But that would be really cool! Why doesn't Firefox add this? NEXT This Just In: Internet Makes Books Obsolete PREVIOUS UI Follies, Volume III Written by Jeff Atwood Indoor enthusiast. Co-founder of Stack Overflow and Discourse. Disclaimer: I have no idea what I'm talking about. Find me here: http://twitter.com/codinghorrortagged: imagesperfperformanceprogressive-enhancementprogressive-images07-08-2017
ImageOptim — better Save for WebRemoves bloated metadata. Saves disk space & bandwidth by compressing images without losing quality.tagged: imagesoptimisationperformance07-08-2017
Awesome-Hacking/README.md at master · Hack-with-Github/Awesome-HackingA collection of awesome lists for hackers, pentesters & security researchers.tagged: securityhackingpentest07-08-2017
The Critical Request | CSS-TricksServing a website seems pretty simple: Send some HTML, the browser figures out what resources to load next. Then we wait patiently for the page to be ready.tagged: critical-pathrenderingperfrequestbrowsers03-08-2017
Netflix Is Reportedly $20 Billion in Debt | MoviefoneThanks to its growing emphasis on original content, streaming giant Netflix is now $20 billion debt, according to the L.A. Times.tagged: netflixdebtmicroservices03-08-2017
mcmadhatter/Ninja-LWRF-Energy: Support for the JSJSDeigns lightwave RF wifilink box with the NinjaBlocks system.A Ninjablock driver to interface with the Lightwave RF Energy Monitor, via UDP packets to the JSJS Designs WiFi link.tagged: lightwaveninjablock03-08-2017