gowan | 4 years ago | on: Google employees who work from home could lose money
gowan's comments
gowan | 4 years ago | on: Red delicious apples weren’t always horrible
if you want a good green apple buy a newtown pippin.
gowan | 4 years ago | on: Red delicious apples weren’t always horrible
i think part of the problem is that farmers pick them to early so your usually getting an green golden that has rotted a bit to turn yellow.
gowan | 4 years ago | on: Someone has to foot the bill for empty offices
gowan | 4 years ago | on: Tax Evasion at the Top of the Income Distribution: Theory and Evidence
gowan | 5 years ago | on: Cycling is more important than electric cars for reaching net-zero cities
* if you are getting into a tight spot then own the lane. it is better for a car to see you and hit you then for it to not see you and hit you.
* always have high intensity blinking lights ... (in some places it's illegal to ride at night without lights)
more safety tips: https://bicyclesafe.com/
gowan | 6 years ago | on: A proactive approach to e-scooter safety
many states have a "dead red"[1] law for when lights are not operational. which permits the cyclist to proceed with caution after stopping.
[1] https://en.wikipedia.org/wiki/Traffic_light#%22Dead_Red%22_l...
gowan | 8 years ago | on: Giving up reading news will make us happier
gowan | 8 years ago | on: PhantomJS: Archiving the project, suspending development
gowan | 8 years ago | on: Learn FFmpeg the hard way
gowan | 8 years ago | on: Show HN: ChromeDriver Proxy an extensible proxy to ChromeDriver
gowan | 8 years ago | on: Ask HN: What did you work on in 2017?
* release ghostdriver 2.0.0 [1]. this is the implementation of the webdriver protocol for phantomjs. unfortunately phantomjs 2.5 was never released :(
* create chrominator [2] a high level api for chrome remote debugger. now defunct... use puppeteer
* created chromedriver-proxy [3] to help me extend chromdriver without having to recompile the c++ project. it also handles pooling browsers. the coolest extension i've built so far is recording video on headless chrome. still a work in progress but has proven stable for the real world test suite i support.
[1] https://github.com/detro/ghostdriver/releases/tag/2.0.0
gowan | 8 years ago | on: Show HN: An API for filling out PDF forms
acrobat FDF[1] and Apache PDFBox[2] provide something similar but are not declarative. i'd be interested in seeing an approach with mozilla/pdf.js ... though i'm not sure how usable it would be.
gowan | 8 years ago | on: Consistent Selenium Testing in Python
it would be nice to have a browser extension that abstracts the pattern in the browser.
gowan | 8 years ago | on: Consistent Selenium Testing in Python
anti-patterns
(1) implicit wait. this will create subtle differences in behavior between drivers. it will also create long pauses when you test for negative conditions.
(2) clear. selenium has built in support for clear[1]. in addition to clear you can send the null key[2] if you want to clear the input midway through a sequence of characters.
(3) time wait. this does not make any sense to me. seems like a clever way to add time.sleep.
gowan | 8 years ago | on: Show HN: Chromeless – Headless Chrome Automation on AWS Lambda
similar idea. chrominator use promises instead of a fluent api. it also follows the selenium w3c spec where possible. it does cool stuff with evaluate and evaluateAsync where it resolves the remote object to something usable.
to be fair there are a few other projects i know about that wrap chrome remote debugger with a high level api:
* autogcd [2]
* ghostjs [3]
[1] https://github.com/jesg/chrominator
gowan | 9 years ago | on: Testing is a separate skill and that’s why it can be frustrating
gowan | 9 years ago | on: Selenium IDE alternatives for UI regression testing
[1] https://github.com/SeleniumHQ/selenium/wiki/JsonWireProtocol...
gowan | 9 years ago | on: Selenium IDE alternatives for UI regression testing
you can set the implicit wait setting. this will work in most cases but will make the tests slow when you need to test negative conditions. the behavior around implicit wait varies by driver implementation which can be annoying. in general it's better to use explicit waits.
> Selenium IDE only works with Firefox and may not work for sites or web apps that have slightly different DOM structure in Chrome, Safari, and IE.
selenium ide has webdriver playback[1]. if you don't like that you can generate webdriver scripts in c#, java, python, or ruby and run them against selenium server.
[1] http://blog.reallysimplethoughts.com/2013/02/18/webdriver-pl...
gowan | 9 years ago | on: PhantomJS 2.5.0 beta
good: slightly faster on javascript heavy pages, full dowload and upload support, selenium support for alerts/popups
bad: slower startup, slower average performance, no mobile support, no screenshot support, takes at least 2x cpu and memory compared to phantomjs
for me phantomjs/ghostdriver is faster than chromedriver. plus chromedriver has an annoying click "feature"[1] that can break selenium tests.
[1] https://sites.google.com/a/chromium.org/chromedriver/help/cl...
google is essentially forcing a pay cut to your base salary in addition to the portion of your salary you use for housing.