I feel so dumb, I just started coding a project to sync my configuration files across multiple machines. I even tried a quick "configuration synchronise" search on Github but came up with nothing. Oh well.
Meh, it's a good practice project even if you don't end up using it in the long run. I strongly recommend you follow through with it. Practical real-world problems, like dot-file management and syncing, can lead you to some fun solutions.
I ended up writing my own in Bash about 7 years ago as a way to bring my Bash skills up to snuff. Was well worth it, even if there are good solutions out there. Probably could use some shell hardening and other maintenance, but it works well enough for my use.
I sadly have to code AMP for work. The reason you see a white page is that the boilerplate code required for any AMP page to be valid includes :
webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;
With visibility set to hidden for every element on the page. This is used to minimize page rendering artifacts for the end user, which is one of AMP's main goals, content should be fixed.
The problem however here is that this animation is usually triggered before the 8s, as soon as the AMP javascript has been served from the CDN. Your adblocker of something of the sort is blocking it which results in you having to wait for the hard coded 8s fallback to see the page no matter if the content is already loaded.
I, too, sadly have to code on AMP bullshit for work.
To be a valid AMP page (at least, according to the Google overlords) you _must_ use the CDN'd AMP scripts. This is the very antithesis of what the world wide web is supposed to be about. IMHO, it's not at all unreasonable to block stuff from domains you don't trust, especially domains controlled by large surveillance corporations. The web should be more resilient. AMP makes it brittle.
> IMHO, it's not at all unreasonable to block stuff from domains you don't trust, especially domains controlled by large surveillance corporations. The web should be more resilient. AMP makes it brittle.
My thoughts exactly, this is what makes me nervous about AMP, it feels like it's pushing the web in a direction that is alien to its original ideas.
(I can't test it in my current browser, unfortunately, but I think that's right.)
[edit]
Update: I got to a browser I could test it on. Unfortunately, it turns out uBO doesn't let you apply :style() rules to all pages indiscriminately, you have to specify a domain name pattern - which is pretty annoying, because the principle is evidently sound; this does work on the link in OP:
µMatrix blocks everything that's not from the primary domain unless I tell it otherwise, which is sometimes annoying, but on the other hand lets me cut out loads of crap (hello AMP-project).
Thanks for the enlightenment, this explains why I no longer visit The Independent's website.
I naively assumed, to begin with, that they'd pushed out something broken. Except it never got resolved, which surprised considering the length of delay. So I resolved it by pretending they no longer exist.
I'll likely never know if they ever do resolve it.
That being said, this is most likely the culprit. If OP is blocking AMP CDN, the inlined CSS code will hide the content until the CSS animation completes after whatever the timeout is nowadays.
This CSS animation is just the backup in case the javascript doesn't load at all, really. After 8 seconds, the page gives up trying to prevent the flash of unstyled content and just renders, regardless of how bad the styling is. It also includes a <noscript> block that renders the page immediately if javascript is disabled. The 8s thing is for network issues. Graceful degradation.
Lots of documents (amp or not) use the same "hide the screen until layout is done" trick to avoid multiple relayouts as the initial javascript is running and CSS is being fetched. More often than ideal, they don't have a fallback if the javascript doesn't load at all. AMP mandates it with this CSS animation, which is far better than nothing.
Also when served from the AMP Cache (https://www-ehow-co-uk.cdn.ampproject.org/c/s/www.ehow.co.uk... for the example shown), the layout algorithm that javascript runs is applied by the AMP Cache instead and the 8-second timeout code is removed completely (view source and take a look). This doesn't work on all pages - there are some features that require a client-side context, but it does work on this one. Websites can run the same server-side layout algorithm on their origin using a node library (https://www.npmjs.com/package/amp-toolbox-optimizer). There is also work being done to improve all of this (server side layout on more documents, and making the system easier to run on your own site).
The 3s observation from the original post is interesting. It may just have been an estimation of the 8s, or it could have something to do with how the document is configured. Looking at this document, there are some <amp-font> tags that the document author has added with a 3000ms timeout. These are tags that instruct the AMP javascript to change the document CSS class depending on the success of failure of loading of a particular font. By default (not amp specific), if a document loads a webfont for a particular text, the browser will not display the text until the font is loaded. <amp-font> provides a CSS hook by which the author can do stuff like "hide the text for up to 3s, or when the font has loaded, whichever comes first". This page has some <amp-font> tags with a 3s timeout referencing fonts that have not been added to the document, which seems like a mistake from the document author, unsure. I was not able to reproduce the 3s experience though, so this may be incorrect speculation as to what happened.
> The 8s thing is for network issues. Graceful degradation.
A mandatory 8s lag for a careful users doesn't sound graceful to me :-/
For HNers who weren't creating web back in 2009: we used to have another term as well, "progressive enhancement" that meant more or less "after we got a baseline working on all supported browsers we can add nifty stuff that doesn't work in IE.
Graceful degradation is often handled by changing timing on expected results. Timing is often a useful unconstrained "fudge factor" for such things. And since disabling non-standardized intermediaries mucking about in your browser's w3c-compliant behavior is a solution, I doubt Amp will change to address this failure mode.
> Lots of documents (amp or not) use the same ... trick
Perhaps luck, but I have never encountered one that is so hostile about it with nearly 10s wait outside of AMP. I've rarely encountered a second or so's delay, but two or three sites including a large one that have the massively excessive AMP delay.
So to call it the same trick seems like a stretch from a user annoyance point of view.
Sometimes it's that simple, often it's not. There's still plenty of sites available without such hassles so it's not yet a problem finding alternatives.
On the other hand an ad blocking user is not necessarily producing no value for the site. I've had subs to newspaper sites, all of which I viewed with blocking on, and Independent will never now be one of them. If Guardian did likewise, and added AMP, I'd cancel my current sub and look elsewhere, which would be a definite loss of value for them.
I'm not so wedded to the views of any one outlet that I'd subscribe with this in place, or turn off blocking to subscribe, or feel I must subscribe to the same one indefinitely.
If it's a site I wouldn't have considered a sub or donation to, you're right, nothing is lost.
This sort of assumes that (a) the only possible system is surveillance capitalism (I have no problem unblocking advertisers on sites which don't track me e.g. DuckDuckGo, I also have no problem paying for things directly -- in fact, I prefer it); and (b) that this is the sole reason for using something like µMatrix which blocks _everything_, not just ads.
Accessibility is about much more than screen readers. If a user experiences problems accessing your site, that’s an accessibility problem, no matter what physical attributes that person possesses.
It seems you've been misinformed by the current generation of web designers. Accessibility is actually limited to people with disabilities, though a few people have started to use it interchangeably with usability. [0]
I agree with the spirit of your message though, but that's not what the grandparent post claimed.
> Accessibility is the design of products, devices, services, or environments for people with disabilities.[1] The concept of accessible design and practice of accessible development ensures both "direct access" (i.e. unassisted) and "indirect access" meaning compatibility with a person's assistive technology[2] (for example, computer screen readers).
There is more to accessibly than screen reader compatibility. (I want to emphasize this point, not because I think you said anything to contradict that but because I think that is a point lacking from the conversation in this thread)
For example, I'm autistic and use a "normal" browsers, but garish websites (for example those displaying animated ads) are less accessible to me, because those lead me to becoming overstimulated, making me less likely to absorb and remember information presented on the page as well as being physically and mentally exhausting.
I am perfectly willing to pay for content (and am, through Spotify, Netflix and Patreon), but much of the web is actively hostile to many disabled people. My physical disabilities don't prevent me from using my computer in the standard way but every time I misplace my mouse and try to navigate the web solely using keyboard (which isn't that far from how I usually use my computer, so it's not like I don't know the shortcuts) I am reminded how it must be for people who are unable to use a mouse and have to rely on other input methods. Many websites couldn't have worse UI when it comes to accessibility if they tried.
There's a wide spectrum of accessibility between "content as created by the designer" and screen readers. People with a vision impairment who do not require a screen reader can use the browser's built-in magnifying/zooming capability to make a site usable for them, but only if the content is visible.
8 seconds! I remember browsing the Web in the early 2000s on a good connection and pages loaded fully in a matter of milliseconds. It was often imperceptible. Oh how we've regressed.
>I remember browsing the Web in the early 2000s on a good connection and pages loaded fully in a matter of milliseconds.
That has to be rose-tinted glasses. Networks used to be excruciatingly slow. I would walk away waiting for page loads during the dial-up era. Our expectations have simply been adjusted over time.
If black-tea had a good connection at a time when the rest of us were on dial-up, and all the sites were coded expecting dial-up, they may well have seen excellent load times!
(But yeah, I remember the internet being super slow. JPEGs coming down scanline-by-scanline.)
I don't agree that much with what you are saying, mainly from personal experience.
1. Even if parents find out they probably have no idea what it means (legally or literally)
2. You can open a bank account really easily online for free. (You can find photoshop ID templates for every possible country, maybe they check them more nowadays but some years ago you didn't even need to change any of the hashed numbers and it would be accepted by most services, even PayPal)
3. I did get caught at one point by my parents, they proceeded to take away every bit of technology they could find, so I ended up doing more shady stuff (on a lended machine at mcdonalds) to make enough to buy a new computer and keep on with life as usual. Had to re-buy a new computer every year or so when they found out.
My perspective on the thing is that most parents won't even fathom the idea of what hacking is, so finding out their kid is a "hacker" won't change a thing in their day. And if it does a "hacker" will always find a way to keep on going anyway, trying to not get caught along the way, it's the job spec.
Now what I can agree on is that if the kid tells their parents they're getting money illegally and asking their parents to hold it in their bank account, and the parents agree, then that's just plain stupidity, and a lot of that goes on in the world, parent or not parent...
> Even if parents find out they probably have no idea what it means (legally or literally)
At least one kid admitted that his parents know exactly what he's doing, in the article:
> He said he knew what he was doing was illegal, but his parents were aware of his activities and had not stopped him.
Furthermore, parents aren't idiots. I got into some shit as a kid, and while my parents weren't the tech-savviest folks around, they were usually pretty quick to catch on that something was amiss. And keep in mind, that today's parents probably grew up with computers themselves.
Regardless of whether parents understand hacking, computers, or Fortnite, I think parents would be able to tell if something was up based on differences in what their kid is doing.
The spectrum of Fortnite "hackers" ranges from a bunch of idiots being handheld by internet users on how to use off-the-shelf scripts to those that actually have an understanding of computer science and information security to DIY their own malicious code.
I somewhat agree that if a kid is making $200-$400/mo doing some 'video game nonsense' selling "skins" or whatever, then parents could be apathetic to whatever their kid is doing in their spare time.
Now if a kid was coming to a parent with salary-level money, or buying expensive items, then that would be a more serious sign their kid is involved in something. And given they are too young to legally be employed, there would be a lot of questions where the money came from. Once this level of money is reached, it's easier to fall into a path of being a career criminal. If someone is raking in a few thousand a month as a teenager from Fortnite account theft, who's to say they wouldn't have the confidence to get involved with other crimes like identity theft, bank fraud, stealing credit cards, etc. It opens the door to a lot of bad life decisions.
Not Amazon but drone delivery is becoming a thing, a startup called Zipline is currently (successfully) running trials in Rwanda of drones that are used to deliver blood to hospitals where it would never be able to arrive in a timely fashion otherwise (because of terrain, poor access etc). From what I remember delivery time was about half an hour. It is however clearly not as elegant a solution as Amazon was proposing with their quadcopters, Zipline uses scaled model airplanes with an old-school tail catch system for "landing" (same concept on aircraft carriers). Not "elegant" but certainly gets the job done.
I know I saw a YouTube video covering this recently but cannot find the link sadly.
The landing procedure is really amazing to watch - and I personally find it elegant as in "it solves a difficult problem very easily". Maybe not elegant as in "ballet" or "like the smooth landing of a passenger plane".
Strongly agree with this, why sell a service when you can give your client the tools they need to implement the service themselves with ease.
Strapi has been working in this direction, selling-itself as a "Wordpress" for backends.
Does this play nicely with 3D printing like Fusion/Cura does ? Fusion's UX makes me want to gouge my eyes out. It's almost as if they make it intentionally hard so that you have to buy a training from them...
The map shows headquarters location, not where the founders are from. Many founding teams came from around the world, but put their company headquarters in the Bay Area because of access to engineering and design talent and later-stage investors.
> I can't tell if this shows a terrible bias towards NA or if people who aren't from NA don't even bother applying for X reason(s) or get rejected.
Why not both?
There's a probably at least a bias to English fluency, if not a blanket rejection of non-English applications.
There's been a long-standing bias towards teams, which mandates a level of charisma and social skills that many talented engineers struggle with. For a long time, YC completely excluded solo founders.
And I believe being on-site is another requirement, which is classist. People from other states and countries who don't already have affluence probably don't even bother.
I think this is related to two distinct philosophies, namely what I guess you could call the "Basecamp" philosophy and everybody else (the more popular one in the world today).
One thing that is undeniable is that a bootstrap will always leave you in control at the end of the day. You could argue then that as the author says the customers are your "bosses" but I think it is a good idea to listen to your customers, but that's just me. I think a product should not be made for the potential profit it could amass but to fill a need for these users, listening to them feels like the next logical step to take (and most companies, even tremendously giant ones, still fail to do this I feel like).
Even more important than that is that it might not be the next unicorn, but that is absolutely fine for some people. They just want enough to feed themselves and their families while having a sane work life/rhythm of say 4-5 hours a day once you get it rolling.
I feel like the author used to somewhat adhere to this moto but somewhere along the way got lost and is now simply after the money for the sake of it. I might be making a deductive stretch here but it's what reading this post felt like...
Hey [redacted], thanks for the thoughtful comments here.
> One thing that is undeniable is that a bootstrap will always leave you in control at the end of the day.
I agree bootstrapping gives you more say over which way you take the business, and hopefully that came across in my post (although I only mentioned it briefly).
> I think a product should not be made for the potential profit it could amass but to fill a need for these users, listening to them feels like the next logical step to take (and most companies, even tremendously giant ones, still fail to do this I feel like).
I agree we should be motivated by more than money. As I mention in the post, money is a bad master but a great servant. We need money to serve us, so we can feed our families and keep the lights on, but money itself shouldn't be the goal. I realise when taking funding this confuses the matter, as now you're not just responsible for your family, but for providing a return to your investors. I still believe it's possible to be mission-driven having taken funding, but understand it can complicate the matter.
> Even more important than that is that it might not be the next unicorn, but that is absolutely fine for some people. They just want enough to feed themselves and their families while having a sane work life/rhythm of say 4-5 hours a day once you get it rolling.
I agree the end goal for us is often spending time with those we love, whilst having that sense of purpose I mentioned in the post. We all want to leave some impact on the world, maybe that's a partner or children who know we loved them, maybe it's a few hundred paying customers who love your product, maybe it's some big swing towards a big dent in the world.
My co-founder and I are relatively counter-cultural in the startup world, admittedly it's early days, but we don't work crazy hours as our belief is that the long hours are often busy work, not important work. If we can look after ourselves, not get burnt out, make wise decisions from a place of rest and do important deep work regularly, we believe we can outcompete any startup bro culture that works 80+ hour weeks.
> I feel like the author used to somewhat adhere to this moto but somewhere along the way got lost and is now simply after the money for the sake of it.
I don't believe that's the case, personally. My current wage is half that of 2 other contracting roles I was offered at the same time as this gig. I'm fully aware the vast majority of startups fail, so I'll very likely be out of pocket. I took the role as I admire my co-founder and wanted to learn from his product skills, an area I realised I needed to grow in.
Before taking this role I used to work a full-time job, come home in the evenings and work on my side-hustle. For 3 years it meant I didn't really have a life outside of the day job and the side hustle. Now I normally work 8-4, home by 5 and have the evening to meet friends or relax. People often think taking funding means having less work/life balance, right now for me it's the opposite (again, caveat we're early days).
One use case: I often use Midnight Commander via ssh to my file server. If I move a file on my local machine via NFSv4, it will still pull all the data to my box and back out to the file server.
Command line file managers are nice because when I move a file, it's all done on the remote box (and hence, faster).