We never understood why certain pull requests wouldn't load in Atlassian Stash/BitBucket Server - turns out our adblocker was blocking the page from loading due to having "ad" in the title.
I've run into that as well. I'm amazed that popular ad blockers still do that, since it's obviously trivial to work around for actual ads, and will result in so many false positives.
That's a hilarious comment, and a good point. But you can tell when your ad blocker is messing with site functionality beyond just blocking ads (i.e., the false positives your parent comment mentions). And at a certain point, this is a differentiator among the ad blockers.
This is a good reason to never prefix generated Javascript with hex hashes, at least without swapping out vowels. We rolled the dice one and had this happen on Wikispaces once; it was utterly infuriating to debug.
Nice catch, never thought about it. Is it more problematic with preffixes (vs. suffixes etc.) or should we generally avoid any random string? Appending a hash to the script is very convenient to force the download of the new version of an asset (but maybe we have better solutions now, haven't considered this issue in a while).
You can also do /js/myscript.js?v=1476929634 -- this generally works without any server-side changes. A CRC32 might work better, since controlling mtimes can be annoying.
Why is there a problem exactly? It seems even if hash contains "ad", uBlock origin is not blocking it. Does this problem exist for some specific ad blocking software?
Ad blockers truly are the new virus scanners. They monitor everything that goes into and out of your computer and randomly break stuff just for kicks. And if that happens, it's somehow the fault of the software provider and not the ad blocker vendor.
You can't test against ad blockers (or virus scanners) because the lists keep changing, so you end up applying ridiculous alchemy like not calling your API endpoints "/analysis" but "/computation" and then you just hope for the best.
In the grand scheme of things, I agree that the people behind ad blockers are fighting the good fight, but in practice it's become a cat-and-mouse game of "who can break the internet the most". I don't know a solution.
And that's one of the reasons I don't use an ad blocker. Not even uBlock Origin, which receives all the praise, is reliable in that sense.
I don't understand the crusade against people not using ad blockers by the way. I believe I have good reasons not to. Why do people seem to have a problem with that?
+1 for the minimizing into one bundle thing. Sets of assets are loading sequentially which is slowing page load down.
Your code in each js file seems self-contained, so a simple in-order file concatenation into one .js file as a build step would help. gulp and gulp-concat would do it in a few lines of node, and you'd push the built output to your site.
If you end up wrting so much script that a concatenation approach stops scaling, look into webpack and web modules.
Awesome story! Just as a heads up with uBlock Origin in Chrome on macOS one is greeted with a header followed by a white page. Everything loaded with once I shut it off.
Why should this site owner cater to someone using adblock software?
Because he's trying to make money and ignoring this problem may lose him users? It's not like he's actually showing regular web ads, so an ad-blocking user is as potentially profitable as any other.
Now that I think about it, I've seen a bunch of complaints on HN about Amazon having fake goods for sale (most recently https://news.ycombinator.com/item?id=12743316, but it comes up pretty much every time there's an article remotely related to Amazon). Maybe I should mention something about how we're only sourcing from legitimate suppliers like retailers or direct from manufacturers, which might alleviate that issue. It's definitely not the main problem I'm trying to solve, which is the amount of time good deal-hunting takes. (Price comparison, coupons, taxes, plus around a dozen other considerations).
I think it would be useful to give examples on how or where you your site finds an item at a price that I, presumably, was not able to find?
It sounds sketchy. :)
Also not sure if the whole workflow of your clients providing prices for items and then hoping your site delivers will work. How do I know the price I provided is realistic at all?
If you already have the capability to find items cheaply, just list those items on your website and let people purchase them :)
>I think it would be useful to give examples on how or where you your site finds an item at a price that I, presumably, was not able to find?
Right now I'd be checking other retailers, other price comparison sites, some tools, plus using a handful of tricks to save off the posted price. It's deal-finding-as-a-service.
I want the flexibility to be able to source differently later; e.g. if there's a lot of demand for one brand I might get direct from the manufacturer, or wholesale, etc. You as the customer should be agnostic as to where I get the product from, as long as it's the right price.
>Also not sure if the whole workflow of your clients providing prices for items and then hoping your site delivers will work. How do I know the price I provided is realistic at all?
I don't know either. I believe I'll be able to fulfill a significant portion of orders, but I won't know that until a bunch of orders come in.
If you a put in a price within a few percent of retail, there's a good chance we'll be able to meet it.
Also, I'm not charging tax out of NY, and most states have a dropship sales tax loophole. That means you could save 3-4% off the Amazon+tax price on most items even if I don't find a deal.
>If you already have the capability to find items cheaply, just list those items on your website and let people purchase them :)
Well, I've sold through Amazon and other channels and have had over 100k in sales, all from being able to find items cheap enough to resell. But to launch a website to sell you either need a narrow niche (which prevents mass appeal), or a huge investment to list many products (or big partnerships with sellers with lots of products). Allowing the customer to name the product lets me not worry about product pages, and I do think the Name Your Own Price mechanism is beneficial to all parties (priceline is valued at $73 billion because they brought a ton of value to users).
Eventually I'm going to want to open up to sellers/retailers, but even without that I think I can add value.
I'm not even the target market (too young), and this is my favorite job board already. Very fast to navigate around - speed IS a feature! Also love how granular the locations are.
Awesome.. I remember reading your first post and finding the idea neat but also saying in my head, with amusement: "right, everything is easy when your name is John Wheeler".
I hadn't seen this site before, and I think it's a great idea. Though I'm young, I am certainly terrified about the trend of age discrimination in the valley - after all, we all age! I'm glad to folks trying to make a meaningful difference in the trend. Perhaps through good samaritans such as OP, those same twenty-somethings that reject so many qualified applicants on account of age will receive better treatment when they themselves reach 35 or 40.
In 5 years there will be some new hot nodejs and then those current 20 year old will find the same thing and they will complain about the same thing. Oracle and Sap job pay pretty well and they are filled with old people (30+).
I thought I was on medium.com.. You need to add a call to action to the end of your post! Add a short line - "if you've experienced ageism checkout these job listsing at /link" or "to see what I built visit /link" or something similar. Lots of lazy people want to click a link at the end of your post to see your site rather than trying to find a link in your profile or scrolling all the way to the top. Plus when someone inevitably copies your content, you get a free link.
I should make a site with marketing tips for devs...
Woah - did I miss the announcement that old is now 35 and above? Given the working range of professional engineers in the SF field, it sad that its not easier to invert the problem and build a Young-Fun-and-Full-of-Recent-Academic-Course-Material-Jobs.com.
I don't think that age is old, I find I rather have people who are experienced more important than age. If you have skill, I could care less if you're 80, so long as you get results and share your insights. I've learned plenty from those who are developers for longer amounts of time than me.
A real issue is targeting jobs for people who don't live in places that are known tech hubs. It took me knowing the right person to finally get a 'real job' in the field, and I only got it a few months ago (less than 2) I honestly don't know what I could of done otherwise, I've applied at a number of places and only ever got maybe one email back.
This is just how recruiting works in tech, it's nothing about you personally. Knowing people is really the best way to get work in this industry even in the hubs.
This is why code schools are so successful, unlike a traditional educational institute they are usually run by people who have worked in the industry, who will have the contacts to get you your first job.
"The Age Discrimination in Employment Act of 1967 (ADEA) protects certain applicants and employees 40 years of age and older from discrimination on the basis of age in hiring, promotion, discharge, compensation, or terms, conditions or privileges of employment." [0]
OldGeekJobs.com works since it's the reverse of this... essentially discriminating against younger candidates. It's not legal to discriminate against 40+ in the US.
It reverses it by discriminating against the young, fighting ageism with ageism. I didn't realise age discrimination against those younger that 40 was legal in the US. There are other countries where a "jobs for the old" site would most likely be illegal.
Except it's not jobs just for people who are older, it's companies explicitly saying they do not discriminate based on age. No one is saying they'll only hire someone 40+, unless they're looking for 20+ years experience which implies your age.
No you didn't. It's just that SV only wants to hire people they can make work 80+ hrs. per week (preferably) and who will refer to it as "paying their dues" and be "thankful to get the experience under their belts."
One of the reasons I want to work on OldGeekJobs is because I’ve experienced ageism first-hand. I’m only 37 years old, but I was rejected by a startup of twenty somethings a few months back.
Ahh - that first painful moment of, "Wait a second, I'm too young to be the victim of age discrimination!"
I really like how the author posted the fake pricetag before spending time implementing payment processing - easy way to verify people will pay for it, low cost of experimentation. I've heard of other companies using similar strategies like a/b testing features that don't exist yet to figure out what they should build next.
Congrats for doing this and writing so honestly about it! But why only $1000? There are 134 "green" jobs * $50 which would be $6700. Or the Stripe integration was added that much later on?
I wonder if the problem is specific to ageism in individual contributor roles. I've worked at a few startups where maybe 1/3 of the product team was over 40, but I can only think of two coworkers over 40 who didn't have any direct reports. Do we find ourselves wondering why an individual hasn't "advanced" to a management position after 10+ years?
I don't ever wonder this when hiring. It's very common to see someone who tried management for a while and didn't like it or wasn't good at it, and have concluded that they love coding for a living.
Technical management isn't for everyone, and isn't a natural progression from being a software engineer. The transition is very difficult for most people.
I wish folks like Bray had championed this cause 20 years ago. It may not have done much, but... it feels a bit weird to hear old people complain about discriminatory impact. I can't say he was a contributing factor to the ongoing 'youth culture', but... it wasn't hard to see this coming.
My situation may be somewhat unique, in that I've had grey hair since I was 18. Not a HUGE amount at 18, but... people noticed. By the time I was in my mid 20s, it was definitely noticeable - more pepper than salt still, but noticeable. By 30... there's a fair amount of grey showing. Early 30s I've got people thinking I look good for being in my late 40s (had that more than a couple times).
But when it came to interviewing and opportunities, I was already feeling the age stigma in my late 20s. "Not a cultural fit" - not even in silicon valley mind you.
Had someone interviewing me - early 30s - said "well your resume only goes back about 12 years or so, what were you doing before that?" "High school". "Whoah..." - later found out he's assumed I was mid 40s.
Could I dye my hair? Yeah, but.. it's a pain, and... other parts of me will get old too. Not worth it - want to get hired based on ability, etc.
What's sad is to hear about the mid 30s folks wanting to get plastic surgery to look younger, which just validates and perpetuates the continuous youth culture. May not be possible to fight it at the Facebooks and Googles of the world, but it shouldn't be this bad...
I can't comment on Facebook but at Google I see plenty of people in their mid 30s and beyond. I joined in my early 40s. Yeah, we hire a lot of new grads / younger folks (I interview a lot of new grads) but I haven't noticed any overt ageism in the groups I've been in. Plus, the people making the hire decision don't see the candidate anyways. You should/would most likely get called out by the hiring groups if you added in color/vague "cultural fit" references.
Well, that's a huge company with many different types of engineers, and in business a long time (relatively). I would say the ageism is more likely at small startups that happen to have mostly young (in their 20s) engineers.
That's likely to be self-selecting, isn't it? I know as a 37 year old engineer with 2 kids I value stability and a reliable salary over excitement/'changing the world'/foosball tables etc.
I have the same problem. I have more grey than not at this point and I'm only a hair past 30. I've been thinking about dying it for interviews but the moment it washes out people are probably going to be put off by the charade regardless if it's right or wrong. Not to mention it signals insecurity. So I'd have to dye it and stick with it which sounds like a real pain in the ass.
Stories like this worry me. I'm in my early-mid 30's and the grey is starting to become noticeable. If I was to go on a job hunt I might get it colored.
Same here (30 now), and I'm dyeing my hair every month (1 day before going for a haircut, to be exact). I like looking younger myself, but I've also noticed a different perception from clients (I'm a freelancer). Got some grey showing in my full beard as well, and might dye it too once it bothers me. Dyeing takes about 45m in total, and is really good for a month if done around the time of haircuts. That's for short hair (2-7cm). I hate ordinary dye as it contains ammonia, but I found an ammonia-free foam application that works well. 45m and €8 per month is quite cheap to invest in (subjectively) better looks and improved confidence when talking to clients.
Isn't it the other way around when you are freelancing? I remember that people didn't really take me serious when I was around 25... Now that my first grey hairs are appearing (I'm 30) people start treating me like a grown-up.
I guess that's what happens when kids do enterprise: they think of office as an high school party, not as a place to get things done and cultivate a product.
I have the same hair "problem" (it runs in the family on my mother's side), I'm early 30s as well with significant gray hair showing and refusing to dye my hair, and... for me it has always been pretty much an advantage to get senior / management positions relatively fast since I was about 25 (I always tell anyone who asks/mocks about my hair that "at least they take me more seriously") and it has worked out pretty well so far.
My resume never goes back more than 5-7 yrs because it's not meant to be a history report but should be a strong 1-pager with just the highlights of your career, relative and relevant to the position you're applying for (for example, I started leaving out my education because it's not relevant to my experience anymore and it's not been a problem at all). I hope, for my own sake, that I don't owe everything to my hair, but it's definitely not been an obstacle to my progress.
I think confidence and attitude signal more than whatever you think people think about your hair (for starters, stop worrying/thinking about what other people may or may not perceive about you, simply project the self that you want to be) and if you worry about the gap in age perception so much, why not just put your birth date on your resume?
these experiences were mostly > 10 years ago, and since working for myself, it's largely a non-issue. I posted here not so much to complain/whine as much as to add (yet) another anecdote about ageism. Visual impressions do count on first meetings (well, all the time), and there's often little or nothing you can do about them (skin color, eye color, height, etc), and yes, a certain degree of "just get on with it and present yourself with confidence" is needed. There's also an issue about "if a hiring manager is that shallow, you may not want to work for that company anyway", but it's easier to take that mindset when you've got savings and prospects, vs having been out of work for a year and having trouble getting past a f2f interview (after having aced phone conversations) because of your hair color or age (not happened to me - yet? - but have had a couple friends go through this already just in late 40s).
spent an hour putting up a Google form and static site on a cheap Digital Ocean instance.
Now I feel like the Old Geek (I'm 32):
What's the deal with Digital Ocean? If the website is static and receives content by manual copy-pasting from a Google sheet (as outlined in the article), why bother with Droplets and Storage and all the other configuration? Why is good old web hosting (the kind where you just upload your html/php/js via FTP and it all just works) not good enough for this? Really curious.
Digital Ocean is just a simple VPS provider - I wouldn't even call it cloud.
The usual cPanel PHP 5.4 shared hosting is consistently unreliable, insecure and a generally overall bad idea. Who would you actually even trust to run it?
Not sure I follow that ontology as that doesn't necessarily make something a cloud. API's to interact with the ecosystem make it more like a cloud.
Whilst I understand DO have API's, just saying the machine can be dynamically resized doesn't justify the cloud tag. Cloud doesn't need to be virtual, either.
To me, I think of cloud as a business term that describes infrastructure that can be easily manipulated with software (or dashboards). That's what DO provides albeit with WAY less functionality than AWS (but at a much lower price point).
Your qualifier there made me laugh so hard because it's so true for all kinds of sysadmin-y reasons. Flashbacks of talking down a VP who said "just put it on DO or something" came to mind immediately.
DO is a simple hosting if you want. It is more or less the same way.
You create a droplet with one click with either apache or nginx and you're good to go. Sftp probably, If you feel nostalgic you can have ftp access too.
I would understand if the author was writing about setting up the blog with angular and using Amazon fg6 instance with cloudfire load balancer...
Well I'm 40 year old and understand that you question why use a DO instance for a static site. But I would think why not put it AWS s3 or GH-pages. Nothing special needed and they serve static pages for you.
Good old web hosting is not good at all. Please please never ever use shared web hosting for anything. As soon as your site gets a little bit popular you're almost guaranteed it's gonna get hacked.
DO is VPS, so there's not the slightest chance for tenants in the same machine to see or modify stuff from other tenants (besides attacks through the network); also you have a guarantee on the amount of CPU and memory allotted to you. The best kind of shared hosting only relies on unix user permissions for security and that's not enough, plus you don't get the CPU and memory guarantees VPS offers.
I actually had a DO instance hacked, via Wordpress exploit. I guess I wasn't keeping my Wordpress up to date, or not running a security plugin I didn't know I needed. Had to shut the whole thing down, start up a new droplet, reload the website from backup.
Meanwhile my WP sites on DreamHost are happily humming along, automatically upgraded, any problems are promptly attended to by their support team. $12/month, unlimited sites/storage/bandwidth. I do not work for DreamHost.
Great site! And thanks for taking my feedback in stride about the "tell people you heard it on oldgeekjobs.com" not being appropriate for the scraped jobs! The change (along with prioritizing paid ones) looks great!
Job postings aren't sorted by date correctly. For example https://oldgeekjobs.com/jobs/California?page=2 shows jobs posted '2 days ago' while the front page shows jobs posted '30 days ago'.
254 comments
[ 5.9 ms ] story [ 312 ms ] threadIt seems related to your /js/ads-controller.js file (it gets blocked because of the "/js/ads-" portion in the path).
I would suggest fixing that (and preferably minimizing your JS into one bundle).
Maybe change "ads" to "posts" globally in the frontend?
Adblockers are are always going to block anything called "ads", even if it's a legit component of your site
We never understood why certain pull requests wouldn't load in Atlassian Stash/BitBucket Server - turns out our adblocker was blocking the page from loading due to having "ad" in the title.
Can't they just stick to blocking domain regexes instead of actually breaking the web?
e.g.
/js/1476929634/myscript.js instead of /js/myscript.js
Then use your webserver to rewrite /js/<any number>/myscript.js to /js/myscript.js
Plus, once it's configured you never have to worry about it again.
It's longer, but even a 256-hash isn't that long? (and sha1 would probably be fine, obviously)
"Wait all descriptors containing the letters 'ad' are ignored?"
"Madness."
"This is HTML!"
Blocked by ad blocker.
You can't test against ad blockers (or virus scanners) because the lists keep changing, so you end up applying ridiculous alchemy like not calling your API endpoints "/analysis" but "/computation" and then you just hope for the best.
In the grand scheme of things, I agree that the people behind ad blockers are fighting the good fight, but in practice it's become a cat-and-mouse game of "who can break the internet the most". I don't know a solution.
I don't understand the crusade against people not using ad blockers by the way. I believe I have good reasons not to. Why do people seem to have a problem with that?
Your code in each js file seems self-contained, so a simple in-order file concatenation into one .js file as a build step would help. gulp and gulp-concat would do it in a few lines of node, and you'd push the built output to your site.
If you end up wrting so much script that a concatenation approach stops scaling, look into webpack and web modules.
http://i.imgur.com/Ovbi0ic.png
Because he's trying to make money and ignoring this problem may lose him users? It's not like he's actually showing regular web ads, so an ad-blocking user is as potentially profitable as any other.
Going to try resubmitting.
It sounds sketchy. :)
Also not sure if the whole workflow of your clients providing prices for items and then hoping your site delivers will work. How do I know the price I provided is realistic at all?
If you already have the capability to find items cheaply, just list those items on your website and let people purchase them :)
>I think it would be useful to give examples on how or where you your site finds an item at a price that I, presumably, was not able to find?
Right now I'd be checking other retailers, other price comparison sites, some tools, plus using a handful of tricks to save off the posted price. It's deal-finding-as-a-service.
I want the flexibility to be able to source differently later; e.g. if there's a lot of demand for one brand I might get direct from the manufacturer, or wholesale, etc. You as the customer should be agnostic as to where I get the product from, as long as it's the right price.
>Also not sure if the whole workflow of your clients providing prices for items and then hoping your site delivers will work. How do I know the price I provided is realistic at all?
I don't know either. I believe I'll be able to fulfill a significant portion of orders, but I won't know that until a bunch of orders come in.
If you a put in a price within a few percent of retail, there's a good chance we'll be able to meet it.
Also, I'm not charging tax out of NY, and most states have a dropship sales tax loophole. That means you could save 3-4% off the Amazon+tax price on most items even if I don't find a deal.
>If you already have the capability to find items cheaply, just list those items on your website and let people purchase them :)
Well, I've sold through Amazon and other channels and have had over 100k in sales, all from being able to find items cheap enough to resell. But to launch a website to sell you either need a narrow niche (which prevents mass appeal), or a huge investment to list many products (or big partnerships with sellers with lots of products). Allowing the customer to name the product lets me not worry about product pages, and I do think the Name Your Own Price mechanism is beneficial to all parties (priceline is valued at $73 billion because they brought a ton of value to users).
Eventually I'm going to want to open up to sellers/retailers, but even without that I think I can add value.
Archibald.
Lyndsy. :)
I should make a site with marketing tips for devs...
Do it and don't forget to post it here. ... Seriously.
A real issue is targeting jobs for people who don't live in places that are known tech hubs. It took me knowing the right person to finally get a 'real job' in the field, and I only got it a few months ago (less than 2) I honestly don't know what I could of done otherwise, I've applied at a number of places and only ever got maybe one email back.
This is why code schools are so successful, unlike a traditional educational institute they are usually run by people who have worked in the industry, who will have the contacts to get you your first job.
OldGeekJobs.com works since it's the reverse of this... essentially discriminating against younger candidates. It's not legal to discriminate against 40+ in the US.
[0]: https://www.dol.gov/general/topic/discrimination/agedisc
This kind of exploitation is as old as mankind.
Ahh - that first painful moment of, "Wait a second, I'm too young to be the victim of age discrimination!"
Congrats!
Technical management isn't for everyone, and isn't a natural progression from being a software engineer. The transition is very difficult for most people.
My situation may be somewhat unique, in that I've had grey hair since I was 18. Not a HUGE amount at 18, but... people noticed. By the time I was in my mid 20s, it was definitely noticeable - more pepper than salt still, but noticeable. By 30... there's a fair amount of grey showing. Early 30s I've got people thinking I look good for being in my late 40s (had that more than a couple times).
But when it came to interviewing and opportunities, I was already feeling the age stigma in my late 20s. "Not a cultural fit" - not even in silicon valley mind you.
Had someone interviewing me - early 30s - said "well your resume only goes back about 12 years or so, what were you doing before that?" "High school". "Whoah..." - later found out he's assumed I was mid 40s.
Could I dye my hair? Yeah, but.. it's a pain, and... other parts of me will get old too. Not worth it - want to get hired based on ability, etc.
What's sad is to hear about the mid 30s folks wanting to get plastic surgery to look younger, which just validates and perpetuates the continuous youth culture. May not be possible to fight it at the Facebooks and Googles of the world, but it shouldn't be this bad...
This is just my experience, though.
My resume never goes back more than 5-7 yrs because it's not meant to be a history report but should be a strong 1-pager with just the highlights of your career, relative and relevant to the position you're applying for (for example, I started leaving out my education because it's not relevant to my experience anymore and it's not been a problem at all). I hope, for my own sake, that I don't owe everything to my hair, but it's definitely not been an obstacle to my progress.
I think confidence and attitude signal more than whatever you think people think about your hair (for starters, stop worrying/thinking about what other people may or may not perceive about you, simply project the self that you want to be) and if you worry about the gap in age perception so much, why not just put your birth date on your resume?
Now I feel like the Old Geek (I'm 32):
What's the deal with Digital Ocean? If the website is static and receives content by manual copy-pasting from a Google sheet (as outlined in the article), why bother with Droplets and Storage and all the other configuration? Why is good old web hosting (the kind where you just upload your html/php/js via FTP and it all just works) not good enough for this? Really curious.
The usual cPanel PHP 5.4 shared hosting is consistently unreliable, insecure and a generally overall bad idea. Who would you actually even trust to run it?
Sysadmins. Scary scary sysadmins.
You create a droplet with one click with either apache or nginx and you're good to go. Sftp probably, If you feel nostalgic you can have ftp access too.
I would understand if the author was writing about setting up the blog with angular and using Amazon fg6 instance with cloudfire load balancer...
It doesn't any more - he's built an app to handle that.
Meanwhile my WP sites on DreamHost are happily humming along, automatically upgraded, any problems are promptly attended to by their support team. $12/month, unlimited sites/storage/bandwidth. I do not work for DreamHost.
Job postings aren't sorted by date correctly. For example https://oldgeekjobs.com/jobs/California?page=2 shows jobs posted '2 days ago' while the front page shows jobs posted '30 days ago'.
Now I wonder which of the job posts are 'Old Geek Jobs', for old geeks, and which are not.