Ask HN: We have the expertise but no clients. How to reach them? - <AUTHOR> We started a consultancy company 4 months back with two medium sized projects that we got as individual freelancers. We have the expertise and experience in healthcare technology ( FHIR, interoperability ), which is a niche. But now we have zero leads from last month. We cannot figure out how to reach the potential interested clients who need this technology.<p>https://alstonia.io <comment><USER2> B2B consultant here for 30 years weighing in with broad truths:

* If you are waiting on leads, you die. You create leads -- every day, as your top business priority -- by working to inform and educate people. You deliver value now (information, education) to capture value (a sale) later.

* This is going to mean talking to strangers. It's going to mean experimenting with ads, native advertising, figuring out which channels your buyers frequent, etc. The failure-to-success ratio will be high and that, as painful as it is, is fine. It's part of the process.

* As others have indicated: Don't assume you can just hire someone to do sales or marketing. If the founders don't fully understand the value proposition and the pain points of potential clients, it's very hard to succeed.

* You're new and that means you're likely small. You're also specialized. Consider throwing effort at partnering with larger players who have cracked the code, have a steady stream of clients but don't have your expertise. Subconsulting is profitable and a way to keep the doors open while you figure out how to hunt and kill your own work.

* Your rates have to be high enough to support you with 50%+ of your time unsold/unbooked. During that unsold/unbooked time? You are marketing. With the _possible_ exception of sending out invoices, nothing else is as important.

<comment><USER3> Fellow B2B Consultant here. I had the thread open to find some time to return and add my thoughts and experience.

Everything you've said is spot on, and I think you've hit everything of substance. Growing a consulting (even a tailored tech solution) business means making it a sales business first and foremost - you can prioritize delivery if you reach a point you want to plateau, but 0 leads is not that point.

<comment><USER4> > business means making it a sales business first and foremost

i think a lot of people have the misunderstanding that the world works under a "build it and they will come" model.

<comment><USER5> Frankly, if you build the right thing, they will come.

And it's very easy to deceive ourselves into believing that we're building the right thing.

<comment><USER6> Unfortunately, the world doesn't work that way. Especially for a commodity business like consulting/agencies.

Even if you have product market fit, and are experiencing the "pull" of a hot market...if you have no reliable distribution channels, you have no business.

Humans are busy, and the problems that businesses solve for in the modern world are not life or death issues. Any product that solves a problem that tons of people are already searching google for, is by definition, going to also have tons of competitors.

<comment><USER5> Think bigger. Maybe things that businesses build are not the right things?

<comment><USER7> And what are the right things?

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> Lots of condescending negativity in the comments here. Although a lot of it is true, it's not necessarily helpful.

I've been through this exact frustration, read everything there is on the topic, and have discovered things that work and things that don't.

First and foremost - DO NOT go hire anyone to do this for you. No one can. You MUST learn to sell your own products and services, there is no way around it. And no one can do it better than you.

Second, avoid paid advertising before you've learned how to generate high- ticket sales WITHOUT it.

Paid ads and sales people are for scaling only, once you've got your offer and your messaging down to a proven working system.

The good news is, you can get started easily and you can see results quickly, without spending a fortune on anyone or anything.

If you'd like some hand-holding through this, ping me at email@example.com

<comment><USER9> > and have discovered things that work and things that don't.

Could you share some of your insights?

<comment><USER8> Happy to help. Send me an e-mail with a bit more details about what you do and what you're currently struggling with.

<comment><USER10> It would be helpful to share some general insights, or give some concrete examples from your particular experience, so we can all benefit.

Then people can email you for their specific situation.

<comment><USER8> Ok, I wrote a blog post about it. Hope it's helpful: [https://corebrief.com/2020/09/09/a-better-way-to-find- client...](https://corebrief.com/2020/09/09/a-better-way-to-find-clients-for- your-it-consulting-business/)

<comment><USER11> Great read, thank you for taking the time to write it and share it.

</comment></comment></comment></comment></comment></comment><comment><USER12> This is an incredibly common story among people in tech who learn the skills to build great things and believe that's enough to start a company. Being good at building tech is only half the story. You can write the best code, build the best apps, and design the most amazing UX, but if you can't market your business and sell to people you won't make any money. To run a successful company you _need_ to be good at getting your message in front of people who buy what you're selling.

I don't have an answer beyond the advice that you should _always_ be marketing, generating leads, and selling even when you think you have years worth of work in the pipeline.

<comment><USER13> Not to mention that it's a common misconception in technology that a company creates value by shipping increasing complexity to the customer. I.e. "this is what we have built, this is how we know how to extend it with more features, now let's figure out how to sell that."

Starting with an idea and trying to market it is the opposite of what to do. Instead, figure out what problems your potential customers have (by talking to them!) and then set about solving those problems with as little technology and ceremony as possible.

Once you're done with that, your potential customers are practically already lined up, because they were the ones who ordered your solution in the first place.

Edit: The key thing is that in the initial exploration of the problem space, you are not selling anything. Those discussions are all about the potential customer. You have to put yourself into their minds and view yourself from the outside.

They will be really insecure. Both because they are not ready to buy something any time soon, and because they don't want to reveal sensitive information to an arbitrary third party.

You know that you care about them and their business deeply, so it's easy for you to assume that everything you say comes from a good place. They don't know that yet – and worse, they're used to awful salespeople that just want to trick them into buying more complexity – so they will interpret everything you say in the most dismissive way possible. You have to show that you're different and that you're not in it to sell stuff, but that you have a genuine interest in understanding their business, in which they are the expert.

This is seriously hard but something that can be practised.

<comment><USER4> > You have to show that you're different

what if you prove that you're different by making your sales model different - i.e., you create a solution for a problem of theirs (and hand-hold the implementation and deployment etc), and if/when said solution is shown to have value, then you get paid?

<comment><USER13> That sounds like an interesting experiment I would not want to be the one who makes. One of the issues I can picture with that approach is the extremely late feedback you'd get, when your customer has no skin in the game.

</comment></comment></comment></comment><comment><USER14> _we have zero leads from last month_

I had no idea what FHIR is. I googled. I followed about five or six links without backing up to land here: [http://www.hl7.org/about/gold.cfm?ref=nav](http://www.hl7.org/about/gold.cfm?ref=nav)

Start cold calling. Collect names. Fill a rollodex. Don't stop. Fill another. Follow up in person.

Ask about what's in their current budget. What's coming down the pipeline. How they currently handle work in your area. See their physical infrastructure. Know what the decision maker's office looks like. Get a sense of their actual problems and assure them that you can mitigate them.

Get your ass to work. Out of the chair. In the car and cheap motels. Stop pretending there are clients on Hacker News. There aren't. It's just easier to post here than cold call.

Good luck.

<comment><USER15> This. In my previous company, I did ~3k cold calls to get it off the ground. In my current one, ~1k cold calls. Get on the phone. Yes it's painful, so what

</comment></comment><comment><USER16> You won't find clients in a niche like this by setting up a website and waiting for them to show up. When clients need custom development, they turn to recommendations from friends or they turn to industry leaders. They usually don't have the expertise to evaluate a new player on their own.

So you need to either establish yourself as a recommended friend (by networking and/or completing successful projects) or as an industry leader. For the latter, you could use strategies like blogging on how a facility should deploy or consume FHIR, write about best practices in interoperability, or whatever. That might lead to people asking you questions and eventually lead to them asking for help with projects.

If you don't know many people in the industry yet, one way to get to know more people might be to partner with another company on a dev project where they need extra help. It might not be as exciting as getting your own project, but you have to start somewhere.

I have a company in this niche and may need help with FHIR and related dev work in the future. Feel free to send me an email to the details in my profile and introduce yourself.

<comment><USER14> _When clients need custom development, they turn to recommendations from friends or they turn to industry leaders._

Good clients just call the people who they've worked with before...if the people they've worked with before haven't called the good client first.

</comment></comment><comment><USER17> I'm CTO at one of your target firms. Integration is a _major pain point_ for us. We don't have a need for you now, but I've noted a few things based on what I could find on Alstonia.io. My needs are different than others, but hopefully this helps. If any consultant or agency wants someone like me to hire you, I want to see that they have used the tech we use, that I can estimate your cost reliably, that they're reliable people in general and that I can understand the code they write. The stuff about security and high availability/fault tolerance kind of comes as a matter of course.

You can check a lot of those boxes by 1) some content on your website describing previous projects (like whitepaper PDFs or long-form blog posts), 2) GitHub projects, 3) references/testimonials. Then give a giant call to action form including asking for a phone number (I hate giving out my phone number, but it seems like everyone requires it, so I imagine it would help you more than not).

Note that these needs are very different then what I'd need from an employee. For instance, I can invest in employees and give them time to learn our tech. For consultants, I can't.

</comment><comment><USER18> Hi there, I'm someone who builds and buys SMART on FHIR tech, albeit small potatoes in the space. A few thoughts from checking out your site to see if I should follow up with you, I hope these are helpful.

1\. WHo are you? Your site says nothing about you. I'm going to give you the keys to the PHI kingdom, I need to know who's soliciting me. Are you two twenty-somethings with amazing skills and ideas, or 20 ex-Epic employees looking to fill a particular gap you found? Without this general information I wouldn't know what sort of project to think about including you in.

2\. Where are you? I'm under contract with numerous health agencies that require data to be on US soil. I have no idea if you are in Romania or Virginia. (Side note, government is the biggest purchaser of health care and therefore your paths will cross at some point, even if it's simply being downstream of federal or state data.)

3\. How compliant are you? Your one page tells me nothing about your understanding of HIPAA, nor how you ensure the security and privacy of the data you will be exposed to. It may seem as if anyone in the space _should_ know about this and the reader can assume compliance, but frankly it's not the case. Yell at me about your third-party audits, your ability to transact PHI, as well as any SOC/FISMA compliance you have.

4\. What have you done before? There are a lot of corners in the niche, and I'd need to know what systems you've worked with, what you've built and who for, so I can get an understanding of whether or not you'd be a good fit.

As for leads, with most conferences going virtual your usual approach of HIMSS is buggered, but Healthcare Datapalooza just put out a call for presentations so they're likely looking for (virtual) sponsors already. I assume HIMSS and HCDP sell attendee data, have you looked in to that? And how about FHIR aggregators like 1up and Redox, they are likely plugged in to many of your potential customers.

I'd be happy to chat more, my profile has an E-mail address you can use. Good luck with your venture!

EDIT - forgot to mention, starting out a great way to get noticed is to participate on a HIT Challenge, not sure what's up for grabs lately but challenge.gov - easy way to find the right people to start netowrking with.

<comment><USER19> Having had some exposure to the healthcare interop niche before -- this whole response is great.

Came here to say #1, which is articulated well here. Basically, who are you and why should I trust you -- the info I need in order to assess that would include at minimum your experience (detailed, like you worked with X tech on Y problem with Z firm, not high level fluff) but could also include your background (experience working at $EMR, managed $TECH at $HOSPITAL, studied or taught healthcare tech at $SCHOOL).

I'm sort of looking for your resume. The fact that it's NOT here makes me think it's not all that impressive (sorry to be so negative).

</comment></comment><comment><USER20> Meta-advice, don't take all the advice here too seriously :) People here don't know you situation as well as you do, and following too many different advice will lead you to not have any consistent direction.

So here are my humble thoughts on the website. I have no expertise in healthcare technology, so maybe that's the reason, but I could not understand what types of problems you are solving and what you are doing from your website.

1\. For example, 'Reimagining Healthcare' is an empty phrase. All your sentences seem vague to me: "Comprehensive Healthcare Solutions and Integrations with FHIR, HL7 and SMART", are you consulting on how to create these solutions? are you developing these solutions? are you selling a created solution? Are you integrating somebody's else solution?

2\. There is not a lot of connection to your company in your texts: > Healthcare Data Interoperability and Analytics > Standards like SMART and FHIR allow healthcare providers to store and share data in an interoperable manner which enables organizations to derive insights to provide effective care efficiently.

This is a good description of these standards and why they are important, but what is your connection here? If you are using these standards, then mention it directly. Maybe something like this is better: > We use standards like SMART and FHIR to allow healthcare providers... All other texts in Services section have the same problem.

3\. I don't understand the Solutions section. It looks like a collection of icons and slogans. Let's take one example: Cloud. So I can guess that you are developing your solutions to be deployed on the cloud. But why make clients guess? Write it directly and mention why this is good. "Our solutions are deployed on cloud. This is good because <...>.".

4\. This is just a suggestion. I would add a section of Problems that you can solve. Client come to your sites with problems. So I would write: "1\. You have problem X? We can solve it by doing Y."

Overall, you have to think from the eyes of the client. What is the client looking for?

But again, I do not know anything about your field. I don't know who your clients, what problems they have, and what technology you are building. So you should be very quick to ignore this advice if you think I don't have the necessary understanding.

But regardless, good luck :)

EDIT: typos

<comment><USER21> adam, i liked the way you wrote this feedback.. I was asking to myself how can I get similar one in this portfolio: [http://bit.ly/bix- technology](http://bit.ly/bix-technology) if you dont mind. Thanks in advance.. igormsg at gmail dot com

<comment><USER22> URL shortening/tracking is frowned upon on HN.

Here's the expanded URL: [https://www.beautiful.ai/player/-MFqstolmpEWkDs- Y_mv/Bix-Tec...](https://www.beautiful.ai/player/-MFqstolmpEWkDs-Y_mv/Bix- Technology-Portfolio)

I'm not Adam but your portfolio uses a non-traditional style which is akin to a presentation.

Overall, it was easy to navigate for me as a human but doubtful if its current format is friendly to web crawlers like Googlebot. More specific feedback below.

1\. The 1st & 2nd demos could use an "Introduction" explaining what the demo is about, similar to how you have it in your 3rd demo.

2\. Even better would be to copy the "Introduction" text just below each demo link so the reader can decide for themselves that the demo will be relevant to their interests enough for them to click-through to a third-party website.

EDIT:

3\. It turns out Beautiful.ai is a third-party presentation tool—I initially thought it was your domain. Might be better to embed/host the Beautiful.ai player (if one exists) showing your portfolio on your own domain. This would give your online presence additional credibility and avoid the mild brand confusion I experienced.

</comment></comment></comment><comment><USER23> So, I work in pretty much this exact area. The main issue is you're trying to sell something that customers don't buy - any integration, FHIR or HL7 or something, is only ever needed to get one product to talk to another. Usually a new one to talk to the old one; and the business selling the new product is the one in whose interest it is to get the integration working.

While it's always possible to take existing kit and do more/better automation, this kind of operational improvement tends to have little to no budget unless there's some specific project being undertaken (e.g. going to structured reporting). Generally, although people are often unhappy with internal software, the business will be operating as-is pretty comfortably. You'd need to deliver an awful lot of value to make it worthwhile paying you what you need.

I would probably look to better define your customer. You might have a better shout trying to approach ISVs who are selling new healthcare products, and asking them to use you as a delivery partner. Many ISVs have weak deployment teams and cannot deal with complex integrations, but they will be the ones with a customer and a contract. If you can speed up time to implementation, they get paid quicker and can do more.

<comment><USER18> I agree it's important to define your customer, although when starting out it can be difficult to do so as it brings a sense of closing some doors that you might want open for a bit longer, but in general I'd say your comment:

>you're trying to sell something that customers don't buy - any integration, FHIR or HL7 or something, is only ever needed to get one product to talk to another

is not entirely correct. I for one buy small scale interop product, and the FHIR space is growing quickly, more and more companies will be looking for small and medium activity in the space as new regulation starts taking hold.

</comment></comment><comment><USER24> I am going to be blunt. If you can't get the people you used to work for to hire you or recommend you to their contacts then you are going to fail. Get on the phone to everyone you have ever worked for (assuming you left a good impression) and chase those leads.

<comment><AUTHOR> Our existing client is very happy with our quality of service. However we never approached them directly about referring or providing us leads. Show we do that?

<comment> barry-cotter You should ask for referrals and you should also ask if you can use them as a case study for your website. After referrals and case studies you should probably divide your time between sales calls, cold emails and content marketing, i.e. white papers on technical topics, blog posts, short videos on your topic of expertise. Better badly produced videos that a potential customer can find than planned well produced ones they can't find. If you're confident enough in your skills as a trainer giving classes/courses in person is a wonderful way to build a name and helps a great deal with the book. It is very good to have a book you authored on the topic, even if it is a slim book. Slim books can be the basis for expensive courses, which both make money and serve as advertising.

</comment></comment></comment><comment><USER25> There are a lot of useful comments already.

Something that hasn't been pointed out yet as far as I can tell is that there are accessibility and quality errors on your website. If I am looking to hire somebody it's one of the things I look at when I want to see if they know what they are doing. Not everybody is like me, but these problems are worth fixing anyway:

\- The "Explore" button is a span with a click handler, the click handler updates the URL hash. It's not keyboard focusable, and since it's just a link to a different location in the page, it could just be a link, but if it must be JS, it needs to be a button element.

\- The form does not have accessible labels. Placeholder text is not a label. Also "fullname" looks like an error.

Lighthouse reports some other low hanging fruit.

Overall vibe of that website is that somebody chose some readily-available bootstrap landing page template and didn't check it for basic errors. That combined with the scant information about the company & the fact that your website is really just a single page does not inspire confidence. Even in the small amount of copy that is on the site, there are three errors in this one sentence:

"Healthcare providers will need an infracstructure what is open, interoperable and standards-compliant, which ensures the security, confidentiality and privacy of presonal data."

If you are not spellchecking your copy & shipping valid HTML for a single web page you make for yourselves, it would be wrong of me to expect higher quality in something you are hired to build. FHIR and HIPAA are tough and I have a ton of respect for you for being able to work in that context. The quality of your website should reflect the high standard you bring to that work.

</comment><comment><USER26> Talk as much as you can to your potential customers about their problems in your area of expertise & try to best align. Try to identify, understand and solve points-of-friction from these conversations.

Where to find potential customers? I'd try in following order: \- Talk to existing customers / contacts for referrals \- Talk to your past colleagues / friends for referrals \- Quality cold emails with decent research & pre-work \- Hang out on social wherever your potential customers hang-out and engage in meaningful conversations.

You may not strike success right away but do persist & keep identify what's working / not working. Follow-up regularly. If above gets tiring once-in-a- while - write content that can market your expertise.

Background : Been offering website speed / scalability services expertise for 3+ years.

</comment><comment><USER27> Collected some suggestions here: [https://www.gkogan.co/blog/consulting- advice/](https://www.gkogan.co/blog/consulting-advice/)

Read: Million Dollar Consulting, by Alan Weiss.

Do: Build your visibility and credibility. Fish where the fish are. Where are your target buyers spending their time and getting their information? Find a way to publish there.

Figure out who are the best connected people in your network or vicinity and talk to them, let them know you're taking on projects and be clear in what kind of projects you can help with. Make it easy for them to refer you.

</comment><comment><USER28> Without trying to be provocative I just looked at your website and this leapt our at me.

"Lean Development methologies and modern cloud deployment startagies enable fast paced development with shorter iteration cycles."

Apart from the buzzword bingo, you've misspelt "strategies".

Your copy is incredibly bland and nebulous and doesn't really say anything about what you _do_.

</comment><comment><USER29> I do work in a similar space. You need to talk to the safe contacts within your clients who may know other people in the industry who are working on similar things and ask for intros.

</comment><comment><USER30> Healthcare is really hard to sell into, that is why a few companies own so much of the paying field. The hospital system I worked for had 2,4 and 5 year cycles for their contracts, so things didn't the often and vendors had to be around at the right time to get consideration. It seemed very bizarre and antiquated to me. My best advice would be to to find vendors that have adjacent solutions and partner with them, maybe making their own sales funnel easier.

</comment><comment><USER31> I worked in insurance for 5 years.

If what you do can be sold to doctor's offices instead of hospitals, that's where I would start cold calling people.

Every doctor's office is a small business. They aren't that good at the business end of things and their HIPAA training tends to be poor compared to what hospitals do.

If you can figure out how to educate doctors on why this matters and what the rules are and how you can solve their problems, I think that's your best shot at developing a solid customer base.

Larger healthcare organizations, like hospitals and insurance companies, do their own in-house training and custom solutions. It's doctors offices that can't afford their own IT department but still need to comply with things like HIPAA that are in a world of hurt and could benefit from someone coming in and serving as their part-time IT department and staff expert.

</comment><comment><USER32> I've often wondered if an opinionated solution — in the Rails sense — would sell to SMEs in healthcare. Ask any physician group in the US what their pain point is and it's probably reimbursement. They have to deal with finicky rules from different insurance providers, and usually employ a couple people dedicated to getting reimbursed. They also have to wait long periods of time for those reimbursements.

A company that could promise to improve that situation by standardizing how the practice operates and optimizing reimbursement could have a great sales value. You could also standardize data sharing/HIPAA practice.

You still have to sell it to buyers, one by one.

</comment><comment><USER33> Personally I've been researching in healthcare mainly on CVD for the past five years.

Coming from outside healthcare, I was really shocked initially on how primitive the technology in clinics and hospitals as if they are still in the 1980s especially in the hospital management and operation. I've come to conclusion that healthcare is a very well-funded area and it's ripe for disruption. Consider these scenarios in where I live:

You want a digital copy of your ECG reading, nope they give you the paper based reading of several seconds recording that will lose their ink in a few months time.

You want to transfer your health data record to another hospital or clinic, nope that's impossible since the hospitals or clinics don't perform any proactive data sharing even between government's hospitals, paper based or digitally.

You want the over crowded hospital outpatient section to send you SMS or at least make an online/website call numbers, nope you have to wait physically, and if you've missed your turn when you're away then you are basically screwed.

You have a disabled family member who cannot even move to attend the hospital, nope you need to pay expensive third party doctor to make a visit to your house.

I think you get the idea by now, and since your expertise in healthcare IT and depending on where do you live just talk to the hospital management or govt appointed organization (e.g. NHS in the UK) about any of the above issues and how you can you solve the above mentioned problems or others for the benefit of hospitals/clinics and the society in general.

</comment><comment><USER34> 1- Offer over funnels : Funnels are important, but if I have to choose between a funnel or an offer, I'd choose the OFFER FIRST. You can close 6/5 figure deals over text message, PDFS, ugly 1-page websites, and emails. The offer is the key. Don't create offers that you "think" people will like, instead, find out exactly what they want, do some digging… and give them exactly what they are looking for, and don't overthink it.

2- It's not all about the "one close call" : High Ticket clients have a different psychology. Part of attracting high-paying clients is knowing what triggers them to buy (exclusivity, high perceived value, emotional, psychological, time investment, etc..)

3- Don't sell, select : Everything in your funnel should be designed with you SELECTING them, not you begging for their business.

4- Break the rules! You can go through copying what works, and try it out to get some quick success but eventually you'll get to a point where you create something new in the marketplace, and you are the first one to offer it (angle wise, position wise, offer wise), so take it! First mover advantage is risky, but that's where all the upside is, if you get it right.

</comment><comment><USER35> For HIPAA integrations you're going to need to a lot of security auditing. Something that might work well is publishing a white paper of your personal security practices. Things like full-disk-encryption for developers, password policies, hardware 2FA for ALL company accounts, SSO for all logins with a single place to delete a credential set, mandatory monthly/weekly HIPAA training, etc.

Another thing you might want to consider doing is open sourcing some stuff to help setup FHIR/HL7 integrations. Pretty much the only fully fledged HL7 "solution" you can get for free HAPI [0]. You might want to make some open source tools around all of this. For example: a reverse proxy that prints all to a log that's censored for PII for debugging. Make that for free, push that to github and open source it.

This will get you:

1\. Lead generation: People in this space will know who you are

2\. Trust: Hiring consultants is difficult if you cant see the quality of their work. If you do a good job on these OSS tools you can prove to people that your code quality is high. This demands a much higher price tag.

Something else you might consider discussing is what EMRs you have direct experience with. For instance Epic [1] provides "training services". HL7 has a "HL7 Certified" exam you can take to prove you can memorize it's obtuse message structures. Taking, passing, and displaying this might make some buisnessy-people happy.

[0] - [https://hapifhir.github.io/hapi- hl7v2/](https://hapifhir.github.io/hapi-hl7v2/)

[1] - [https://www.epic.com/services](https://www.epic.com/services)

</comment><comment><USER36> I've never been in your exact position and won't claim to be an expert but I have a fair bit of sales experience and a few close friends who've started their own businesses. One thing that stood out to me is that if I were to stumble across your website I'd have no idea what you're actually providing or looking to provide. It could easily be my personal lack of healthcare industry knowledge and not an issue for your target market. My advice would be not to try and rethink the strategy that seems I see as "if you have a tech need in the medical field, we can handle it" and create something specific. Find a specific problem, create something that solves it, and sell that. Once you have customers for that you can move on to try and grow your business with them. The other big thing is with a field with such sensitive data as the medical field, you need to establish some level of trust and a relationship before a business like a hospital is going to take a gamble like that.

</comment><comment><USER37> I'm sorry to say this but, in my experience targeting very niche needs, a well targeted Google Adwords campaign is hard to beat and gives you the data to help structure the rest of your marketing. If you have the expertise you will learn to get the search terms right.

<comment><AUTHOR> I had the completely opposite idea and thought google ads will be of little benifit. Thank you for the advice, I will try adwords.

<comment><USER37> There is a small amount of people searching for what you offer. Adwords lets you be there when they search for it at a relatively low cost in a very short timeframe. Hard to beat really.

</comment></comment></comment><comment><USER38> One of the ways that sometimes works well is to find big potential client, and then hire (or even partner with) someone that works in their product team. You can use his network. I know it sounds silly. But, that's one of the tactics that many companies use.

</comment><comment><USER39> The easiest customer to 'do more with' is the existing customer you have. You have two projects (presumably two companies), reach out to them and ask them where else they need more help, "what other projects could we help with?" If you're doing a good job then it's natural. It's all about forming a strong relationship at different levels in your customer and having them advocate to use you in other projects.

The other tactic is that your customers know other companies and contacts in the space. Ask them for help - "as a new consultancy we're trying to build our contacts in healthcare, is there anyone in the industry you think we should speak to?".

</comment><comment><USER40> Did you try to connect with your prospective customers via LinkedIn? What do they say to you?

<comment><AUTHOR> The issue is these prospective clients are generally hospitals using an existing EMR system. And when they need some custom solution then they tend to connect to their provider instead of giving us the deal.

<comment><USER40> Well, what about the decision makers in those hospitals? Do they have accounts on LinkedIn? If they don't, where could you meet them, maybe some industry fairs or conferences?

<comment><AUTHOR> We attend conferences such as FHIR DevDays which is more about the technical aspects and attended by less prospective clients and more market competitors. The decision makers in hospitals are hard to contact. But you are right, probably some conference/fair might be there with better target audience.

<comment><USER41> Even if people don't have particularly accessible LinkedIn profiles, if you know their names it's often possible to guess or construct an email address for them based on the format of other publicly available emails for the same institution.

There are also tools like [https://hunter.io/](https://hunter.io/) and [https://rocketreach.co/](https://rocketreach.co/) which attempt to automate the process for you. I've had very mixed results with those kinds of tools, but they're worth knowing about.

</comment></comment></comment></comment></comment><comment><USER42> Random internet advice (not an expert) is to call everyone you know who might know someone. Also would it be so bad to take a contract from a job site or even a job in the intermediate time. Maybe one of you does a job the other biz dev.

</comment><comment><USER43> E-Myth \ 'e-,'mith\ n 1: the entrepreneurial myth: the myth that most people who start small businesses are entrepreneurs 2: the fatal assumption that an individual who understands the technical work of a business can successfully run a business that does that technical work

Voted #1 business book by Inc. 500 CEOs.

[https://www.amazon.ca/Myth-Revisited-Small-Businesses- About/...](https://www.amazon.ca/Myth-Revisited-Small-Businesses- About/dp/0887307280)

</comment><comment><USER44> The core expertise in a consulting company is getting the clients. Half of the consultants have absolutely no idea what they're talking about and do fine, domain expertise is 1/10th of the job, getting clients is 50% of the job, and putting together a work product that feels like it _could_ represent domain expertise is 40%. So I'd approach the problem from "I have no expertise in consulting, how do I build some" which will be more fruitful.

</comment><comment><USER45> > We have the expertise and experience in healthcare technology ( FHIR, > interoperability ), which is a niche.

Cool, but what's the value you offer? Who needs it? Why? What do they usually do? What's their title? Where do they usually look for solutions to their problems?

Selling expertise vs selling value is the difference between being an laborer vs a business owner. If you're trying to sell your expertise, you're thinking about it wrong.

</comment><comment><USER46> While I believe even a good webpage wont currently help you, your current one is missing vital information. First: you business location and email. I mean you use .io, are you in the indian ocean? Are you a UK, US or India based company (this matters a lot to possible customers).

Also I find it not clear from the webpage what would be the benefit of hiring you. (What pain do I have which is solved by you)

<comment><USER14> For a consultancy, the web page is what Graham calls "playing house." It's easier to build a web page than find clients and building a web page feels like meaningful work. It isn't. Nobody hires consultants from a web page.

<comment><USER44> Nobody hires consultants from a web page, but also, nobody hires consultants without checking their web page.

</comment></comment></comment><comment><USER47> I work for a IT company in healthcare. We also do FHIR, interoperability, and such.

This is the easy part. The really hard part is to get customers.

It means having a network, a good reputation, to reply to tenders in time with a ready to use solution that is competitive, adapt to the cursomers needs, etc... We have more employees doing sales and support than software.

You may find work as a contractor for a healthcare company though.

</comment><comment><USER48> If you can spare the time, get actively involved in HL7 FHIR standards development by participating in work groups, showing up at Connectathon events, and volunteering to write sections of implementation guides. This will raise your visibility among customers who hire interoperability consultants.

</comment><comment><USER49> How to get clients.

Or put another way, how to have a business.

The hardest question of all.

As Paul Graham says sell something people want.

</comment><comment><USER50> The best way to get leads is to ask you customer to introduce you to other potential customers. If they say yes, get the intros done quickly and make sure you do a great job with the new prospects so your customer refers you more.

</comment><comment><USER51> You need to go where your customers are. Our customers are startups so we went to every startup meeting we could find in our area, talking to people, perfecting our pitch.

I assume there are places where your customers gather too.

</comment><comment><USER52> Give free presentations (webinars), youtube videos, show your work, demos, working products. Meet people in the health industry. Try to reach them and show what can you do. Ask for intros, show what you can do.

</comment><comment><USER53> You should look at basic marketing 101. Identify market segments, identify customers, who makes purchasing decisions and how do they decide, target those people.

</comment><comment><USER54> Who are you targeting?

<comment><AUTHOR> The clients we started with are online nutritionist and dietitian providers. The had to integrate with FHIR to get referrals from other medical practitioners.

Similarly potential clients are hospitals, clinics, or EMR development companies seeking solutions on FHIR.

<comment><USER55> Hey there, just giving food for thought - the closest i've worked with healthcare marketing was media buying for big pharma.

This is your website claim.

>Reimagining Healthcare & Digitizing Businesses

>Comprehensive Healthcare Solutions and Integrations with FHIR, HL7 and SMART Digitizing Businesses through Cloud, Mobile, and Automation.

But since you have this insight from your customers:

>The clients we started with are online nutritionist and dietitian providers. The had to integrate with FHIR to get referrals from other medical practitioners.

Wouldn't it be better to point that you're helping healthcare businesses get more referrals by making them integrated with standards?

Something like:

>We will help your healthcare business generate more referrals

>By setting you up to standard integrations - FHIR, HL7 and SMART - and make you more effective with Automation, Cloud and Mobile.

This was just something I thought quickly, the point is to show how you've added value to other businesses. This is closer to their reality, just like you, they might be struggling to get referrals and their lack of integrations could be costing them business.

Good luck :)

</comment></comment></comment><comment><USER56> Why are so many people starting businesses without even knowing how to sell their service/product?

No service/product is so good that it automagically sell itself.

</comment><comment><USER57> If you are based in Europe drop me an email. We might have something for you.

</comment><comment><USER58> Market yourself on B2B forums of your industry and create a funnel.

</comment><comment><USER46> How many people are in your sales team?

<comment><AUTHOR> Currently we are a very small team. Only one person handles sales and marketing ( and social media ).

<comment><USER46> At least double that number

<comment><USER55> Just out of curiosity: why doubling the amount of human resources will fix the issue? What is the indicator that points that they have an HR bottleneck?

<comment><USER46> Well, a) the textbook answer for not enough sales is to add sales power b)any important function should have at least 2 ppl (so if one is at a trade fair, sick holiday etc, the other can continue) and also the team can discuss ideas how to progress

Edit (since reply depth is reached): more ppl might have also different ideas what to do

I still mantain one of the problems is not enough ppl in sales. There there might be more problems: probably, but it is not my company (meaning if other people want to figure out the other problens: go ahead)

Of course also one of the programmers can take over this role. (Aptitude assumed)

<comment><USER55> But you need to be think critically taking into account what OP said.

>a) the textbook answer for not enough sales is to add sales power

Yes, but ff your lead generation isn't working, or if the current sales team can't turn them into clients, then the problem isn't lack of sales power. You could throw 10 sales guys at this problem and still get the same results, because your conversion rate is 0%.

b)any important function should have at least 2 ppl (so if one is at a trade fair, sick holiday etc, the other can continue) and also the team can discuss ideas how to progress

I understand that, but for some companies that's a luxury they can't afford - they need something to sustain that person. Else every business would start with 2 of each role, because every role is important.

In my opinion, if the marketing/sales isn't working properly, they need to fix that first. Throwing more people at the problem won't fix it.

</comment></comment></comment></comment></comment></comment><comment><AUTHOR> Link: [https://alstonia.io](https://alstonia.io)

</comment><comment><USER59> Get a good biz dev person

<comment><AUTHOR> How do I start searching for one? Post in job boards?

<comment><USER60> that's one way.

It's a tricky position as you want somebody with the right mix of tech knowledge, business knowledge and bullshiting ability.

Sadly, in my limited experience, there seems to be a large amount of people that excel at the latter but not so much at the other categories.</comment></comment></comment>


Ask HN: A good open source REST service(CRUD) to learn the best practices from? - <AUTHOR> <comment><USER2> Discource on github.

Learn a bit of Rails.</comment>


Show HN: Marketing for Developers – A book about getting your first 100 users - <AUTHOR> http://devmarketing.xyz <comment><USER2> I've seen your book mentioned a lot of places (Product Hunt, I think Hiten Shah mentioned it on Twitter, Facebook ads in the sidebar). How much of that did you plan/execute and how much "just happened"? Maybe the broader question I'm asking is how did you plan and coordinate your launch? (Asking for a friend who is a author and is also myself ¯\\_(ツ)_/¯)

<comment><AUTHOR> I wrote out a 3 month promotion plan. It included items like:

1\. Do a paid beta. Many of those early readers helped create that early buzz.

2\. Writing individual emails to people I know (like Hiten). I gave them a copy to review and asked do their help during the launch.

3\. An email sequence for my mailing list.

However, there's always stuff that's going to "just happen" in real-time as opportunities arise.

</comment></comment><comment><AUTHOR> The inspiration for this project was that I kept getting this question:

"I just launched my app. How do I get users?"

I wrote this book specifically for people in these three stages:

1\. Developers who want to build a product, but haven't found an idea.

2\. Developers who are building a product, but haven't yet launched.

3\. Developers who have launched, and are looking for their first 100 customers.

<comment><USER3> It definitely sounds like something most developers need :) , not sure about the price though (but I'm not your target audience I guess).

Minor typo in your profile: "Recently, I've been the host two podcasts: "

</comment></comment><comment><USER4> What's the response been so far?

<comment><AUTHOR> Really good: I've sold 433 copies so far (in all 3 tiers).

Getting responses like this from readers has been my favorite part:

[https://twitter.com/hrishio/status/664054767581294592](https://twitter.com/hrishio/status/664054767581294592)

It definitely struck a chord.</comment></comment>


Henry James and the Great Y.A. Debate - <AUTHOR> http://www.newyorker.com/books/page-turner/henry-james-great-ya-debate

<comment><USER2> The YA debate strikes me as somewhat orthogonal to what Scott was writing of. I must say that while I find middle and early James very readable, I have tried and failed more than once to read any distance into _The Golden Bowl_ or _The Wings of the Dove_.</comment>


Immortal Beloved (1812) - <AUTHOR> https://lettersofnote.com/2011/06/10/immortal-beloved/ <comment><USER2> This was the basis for the 1994 film: [https://en.wikipedia.org/wiki/Immortal_Beloved_(1994_film)](https://en.wikipedia.org/wiki/Immortal_Beloved_\(1994_film\)) Very well done movie with a terrific soundtrack.

</comment><comment><USER3> >>there are moments when I find that speech is nothing at all. Being such a master musician, he has stated the truth so well. There is so much of human experiences that elude being described in words. I don't know why our words don't reach such deep recesses of our mind. A beautiful letter. We don't write like this anymore.

</comment><comment><USER4> 200 years in the future people will browse great communications of the past on emailsofnote.com, textsofnote.com, dmsofnote.com, and snapsofnote.com</comment>


Time in Go - <AUTHOR> http://bl.ocks.org/joyrexus/a56717634a672dcdfd48 <comment><USER2> More languages should copy Go's time library.

As someone who has written a lot of Go for years, I am always very quick to say that "time" is my favorite Go standard library. I love it.

The "time" library is to Go what the "requests" [non-standard] library is to Python, in terms of a great API and simplicity. For some reason in every other language I've used (important, I don't know every time library! :P) the time library has always been adequate, but not much else.

I think Python's "datetime" is a great example of a not great time library. At one point I was writing Python every day for a couple years. During that time, I could never ever remember the API for datetime, despite it being able to do what I needed to do well enough. I always had to open the docs. I think this is an example of an adequate library that just doesn't have a great API.

Or, take the more generic problem of: I have a time, I have a duration, how do I tell if that duration has passed? Most developers I know (including myself) stumble on this for some period of time (see what I did there?), remembering what do I add to what and is it a greater than or a less than or do I subtract, etc. It is an easy problem, but always seems to require a little bit of thinking.

Go's "time" library is nothing like this.

Go's "time" library you will remember the API, it is intuitive. You can even guess it after writing Go for some period of time. It is that easy (ignoring the constants and non-standard printf-like function in it).

Go's "time" comparison/arithmetic is incredible. Comparing times? Determining expiration? You'll almost never get this wrong the first time. (But write tests anyways)

What I'm trying to say is: even if you don't like Go, take a look at how Go's "time" library works. I think it would be valuable for other languages. Other languages can probably even do it better (imagining better type systems around units), but I've never seen an API that feels as right for manipulating time as Go's time stdlib.

<comment><USER3> Go's "time" library is deceptively simple. Time, in real life, is quite incredibly complex, and hiding that complexity from developers (as Go's library does) does them a great disservice.

To start with, there are actually two distinct notions of time: monotonic and wall-clock. In monotonic time, you want to measure time intervals with high accuracy: a second of monotonic time should correspond as much as possible to the physical span of a second (in the inertial frame of reference of the computer in question, because screw relativity). More importantly, when it's not possible to correspond that time, you at least want guarantees like "time never ticks backwards." In contrast, wall-clock time is about matching a (there's more than one, and the definitions can and do change unpredictably, possibly even retroactively) civil reference clock as accurately as possible.

If you mix those two notions of time, you can evidence problematic results-- changing the system clock five months back, for example, caused my music player to suddenly stop playing music (most likely because a callback timer was scheduled on wall-clock time and therefore would be waiting a few hundred days to start playing again).

Which brings into the next obvious problem: leap seconds. Any span of time greater than 1 second is actually an ill-defined span of time in that it can have multiple values. Once every few years, a minute has 61 seconds (theoretically, it can also have 59, but that hasn't happened yet in practice). So if you're requesting to add a minute, do you really mean "add 60 seconds" or do you mean "add 1 to the minutes field"? POSIX (and anyone else who counts time as seconds since an epoch) opted to handle leap seconds by pretending they don't exist, which causes leap seconds to be so dangerous that, for example, the NYSE stopped trading for about an hour around the last leap second to avoid problems. I can personally attest to seeing date/time parsers choking on leap seconds. And it's not entirely clear if leap seconds actually exist in civil time in some jurisdictions, because there is a small amount of vagueness in the laws.

While on the topic of the differences between jurisdictions, do also note that, for historical dates, you really need to think about the difference between Julian and Gregorian calendars, as well as the fact that the date of adoption of the Gregorian calendar varies from country to country (thanks Protestant Reformation!). Oh, and the year didn't necessarily start on January 1, either, and the change from March 1 to January 1 happened differently for different countries and differently from the Julian->Gregorian adoptions.

Time is hideously complicated.

<comment><USER4> So what's a better time library? Or, rather, how could Go's time library better accommodate these things? It's also not clear that a standard library time package should be the be-all, end-all time management solution. I don't see any reason for a standard time package to handle historical dates, for example.

Google found a nice solution to the leap second issue: we "smear" the second over the day before it occurs by making tiny changes to the time over the day. This means user applications don't need to be aware of it: [http://googleblog.blogspot.com.au/2011/09/time-technology- an...](http://googleblog.blogspot.com.au/2011/09/time-technology-and-leaping- seconds.html)

<comment><USER5> > So what's a better time library?

JSR 310/Project Kenai/Joda Next is often held up as the gold standard of complete, correct datetime handling.

<comment><USER6> And I would also add Perl's DateTime library to this list - [https://metacpan.org/pod/DateTime](https://metacpan.org/pod/DateTime)

</comment></comment></comment></comment></comment><comment><USER7> Golang to me has the best time manipulation I ever seen, wannabe change the timezone, easy as eat pie, wanna add seconds? No prob, wanna compare dates? No biggie

<comment><USER8> True, and for most cases the parsing is great too, but once you get off the beaten path of standard time formats, parsing times can be annoying.

<comment><USER9> Do you have any examples of annoying to parse time formats?

<comment><USER10> [http://play.golang.org/p/hCoZ3tdeM_](http://play.golang.org/p/hCoZ3tdeM_) am I doing this correctly?

Because it seems that golang does not recognize the abbreviations at all.

<comment><USER9> If you use time zones without offsets (just the name like PST instead of -0700) then you have to parse the time in a specific location [http://play.golang.org/p/JzKAq09NtE](http://play.golang.org/p/JzKAq09NtE)

I can only assume that the time zone name alone is insufficient to resolve ambiguous times.

<comment><USER10> Then I think it is not very convenient to type out strings like "America/Los_Angeles" when you are dealing with timezones that come with abbreviations only. The whole point of using abbreviations is to avoid typing out the full name.

Unless there is a way to get "America/Los_Angeles" from "PST"

<comment><USER9> Yeah, I don't get why they require a location.

On the other hand, -0700 isn't much longer than PST and parses directly.

<comment><USER11> Abbreviations are reused in different locales. PST in one locale can have different rules than PST in another locale. The reason the fully qualified name is needed is because it uniquely identifies a locale for which timezone rules can be followed.

Offsets aren't always the right thing to use either. If you are in America/Chicago and use -0600 for your timezone, that's only accurate during standard time, and is off by an hour for daylight savings time. Knowing how/when to shift offsets is part of the timezone rules associated with a locale, because they are not constant historically.

<comment><USER9> Ah thanks, that confirms my theory of why the location is required to parse time zone names like PST.

Offsets are probably going to be fine for recorded timestamps, if all you need is the absolute time that the timestamp represents. But yeah, timezones make things so complicated that there is no one true solution I guess.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> So I copied the example from [http://golang.org/pkg/time/#Parse](http://golang.org/pkg/time/#Parse)

and it did NOT work as expected: [http://play.golang.org/p/Xd9oEeSffd](http://play.golang.org/p/Xd9oEeSffd)

(timezone offset is zero)

<comment><USER12> That seems to be an issue with the playground: [https://github.com/golang/go/issues/12388](https://github.com/golang/go/issues/12388)

It seems counter-intuitive to me that the behavior of time.Parse would depend on a "system location", but apparently it's by design.

<comment><USER13> Time is location-dependant (time zones).

<comment><USER10> You are missing the point. My point is that that particular datetime is parsed as

2013-02-03 19:54:00 +0000 PST

on some machines, and

2013-02-03 19:54:00 -0800 PST

on others. This is means that the timezone offset IS different and the absolute time IS different. One is 8 hours ahead of another even though the original string is the same.

</comment></comment></comment></comment><comment><USER14> Slightly offtopic but I always thought that Mike Bostock's bl.ocks.org was created to support D3 visualization sharing. This is the first time I see it used for another language, somewhat contrary to it's designed use.

</comment><comment><USER15>
        fmt.Printf("\n... and %v days after that ...\n", days)
        t2 := t1.Add(time.Duration(days) * time.Hour * 24)
        printTime(t2)

How is that supposed to work with daylight saving time? Won't _t2_ end up one hour off from _t1_ if there is a daylight saving shift?

<comment><USER9> I find it easier to think of times in UTC rather than local timezones. In UTC (and in reality), those times will always be the same number of hours distance from each other.

If you format it in different timezones (PDT and PST) then yeah, the formatted times will be at different hours of the day.

<comment><USER16> That's not true for UTC, you'd need TAI for that. UTC includes leap seconds.

</comment></comment></comment><comment><USER17> Has anybody ever wondered how Go's date formatting would work if the language is not English?

</comment><comment><USER18> I'm surprised about the method to define a time format by example. There could be an ambiguity between month and day if the example is badly chosen.

I prefer the C way with the struct and format.

How do I get the time offset to UTC time at a given date and location ?

<comment><USER19> There is no ambiguity - you are to provide predefined date in your layout. That predefined date (Mon Jan 2 15:04:05 -0700 MST 2006) is chosen in a way so that there is no ambiguity.

<comment><USER18> Thanks for the clarification. That info was missing in the date API presentation. Indeed, there is no ambiguity.

Just two comments: 1\. The date is not easy to remember 2\. There is still an ambiguity with hours representation. What if I want to represent hours without a leading 0 for values smaller than 10 ? I guess I should than use my own formatting instead of predefined formating.

<comment><USER20> You can remember it as 1 2 3 4 5 6 7: First month, second day, 3pm and four minutes and five seconds in the year '06, offset -7.

</comment></comment></comment></comment><comment><USER21> My favorite is time.Ticker: It returns a channel of Time objects, dispensed at intervals of your choice. It even auto adjusts the interval based on how long your receiver takes to run.

</comment><comment><USER22> It's unfortunate that Go's time library cannot represent an infinite duration, or timestamps in the infinite past or infinite future. This makes it difficult to represent things like "this cache entry never expires", without relying on auxiliary data.

Also, the minimum/maximum timestamp and overflow behavior seem to be poorly- defined.

<comment><USER9> You could use the zero value (t.IsZero()) for that if you wanted to. That might be more confusing than a boolean flag though.

<comment><USER22> IsZero works okay as an "infinite past" value, such as marking that a cache entry has already expired, but it's cumbersome to use as an "infinite future" because zero is naturally _less_ than all the timestamps you're likely to encounter.

It's also not a great idea to manually define the largest possible timestamp as a sentinel, because Add(Duration) doesn't check for overflow.

</comment></comment></comment><comment><USER23> Time libraries like this are a basket of inscrutable bugs waiting to happen. A simply API deceiving its users into thinking they're dealing with a simple subject. Time is anything but.

There are a few notions of time, each wildly different from the other, which we as humans transparently conflate but which will throw computers into wild undecipherable loops:

* Dates, specifically delimited by days, which are logical items of a calendar, not absolute points in time. They're never even _points_ , for that matter, but explicit intervals. * Which calendar? In modern, western times you're okay with just one, but historical, international, and especially historical international dates you will fail.

* Wall times or local times, e.g. what a human being might think the local time is. This is what we tend to mean when something ought to happen "at 3pm" but you should realize that there's no way to treat this uniformly: it holds _on a particular day_ , _in a particular location_. Even simple ideas like "3pm will occur once a day" may not genuinely be true.

* Universal times, of which there are a few variations each dealing with leap seconds differently, UTC, UT0/1/1R/2, TAI ([https://en.wikipedia.org/wiki/Universal_Time](https://en.wikipedia.org/wiki/Universal_Time))

* Intervals of universal time, like "10 seconds" which are the only things which behave sanely from a physical point of view. This is why CPU time or Epoch time is nice. Adding two universal time intervals produces an interval twice as long. Adding a universal time interval to a universal time point produces a new universal time point which, subject to leap seconds, may or may not appear to be the proper number of seconds away. Adding a universal time interval to anything else is nonsense.

* Intervals of wall-times like "half a day" which can be added meaningfully to combinations of wall-time and dates in a given calendar, useful for setting up human-interpretable re-occurrences.

* Intervals of dates which can be added to dates within a calendar

Other caveats apply, mostly having to do with the need to have an accurate geopolitical rundown of time disputes (the "Olson" database is probably sufficient) and a reasonably exact notion of where someone is in space that they are interpreting times (go look up Indiana's time zone and then throw away your standard US 4-tz notion).

Generally, the idea is that when dealing with humans you want to think of time as being arranged into approximately 24-hour chunks (possibly longer or shorter and then overlapping or with weird gaps which should be smoothed out) assigned to each "day" of some assumed calendar. Then you can, given that person's exact point in space, convert points in this notion of time into a universal one using the Olson database. Converting intervals is harder and must be done by converting both ends and then subtracting in universal time, handling leap seconds if you care.

The only time library I've ever used in anger which handles all of this is Haskell's `time` library.

        https://hackage.haskell.org/package/time
        http://two-wrongs.com/haskell-time-library-tutorial

</comment><comment><USER24> Looking at the docs it looks fine; only thing I can remark is that it's too bad that all sorts of constants are in the same namespace; I'd prefer to have all the formatting formats in a separate namespace for intance to make it more clear.

<comment><USER25> The problem with that is that Go has no support for a package that imports something from one package and re-exports it, so if you put things in two packages, you are in the general case requiring users to import two packages now.

Another one of those things that makes sense to me at scale, as I've been bitten before in the dynamic languages by excessively complicated re-exporting systems, but locally is sometimes annoying.

</comment></comment><comment><USER26> Java is an excellent example of how not to do date/time APIs (pre Java 8 anyway). My answer (from years ago):

[http://stackoverflow.com/a/1969651](http://stackoverflow.com/a/1969651)

</comment><comment><USER27> > time.Duration(mins) * time.Minute

Seems a bit clunky. Why not time.FromMinutes(mins) or something to that effect? time.Duration is just "casting" an int64 to a Duration type?

<comment><USER28> Yes.

That's why you usually write it like this:

        time.Now().Add(10 * time.Minute)</comment></comment>


Buying time promotes happiness - <AUTHOR> http://pnas.org/content/early/2017/07/18/1706541114.full <comment><USER2> A friend once presented me with a model of thinking about work and time. Categorize all tasks on two scales: how much you like doing something, and how good you are at it. Now, draw a square and break it into four quadrants. One will be "good at it, but don't like doing it". Another will be "Good at it, and like doing it". The remaining ones are "Bad at it, but like doing it" and "Bad at it, and don't like doing it".

Assuming you have resources to hire help and outsource, consider doing the following:

For things you like doing that you are good at, make that your main job. You will be effective and happy.

For things you don't like doing and are bad at, outsource. If you try doing these yourself, you will be miserable, and the outcome will be sub-par (you're bad at it!).

For things you like doing and are bad at, make that your hobby.

For the things that you don't like doing but are good at, either do them yourself or outsource, depending on your time availability and resources to hire help.

I've been doing this for a few years as much as possible. Even at home, my wife and I naturally divide chores along these lines.

<comment><USER3> >For things you like doing that you are good at, make that your main job. You will be effective and happy.

The other outcome besides being "effective and happy" is "turning something you enjoy into something you hate because now you _have_ to do it." Just because you love doing something doesn't mean you love being forced to do it for someone else 40 hours a week.

It's pretty naïve to think that the things you enjoy in your free time are the things you enjoy doing for paid work and vise versa. I absolutely _hate_ cleaning around my house, I hate everything about it, but I don't mind cleaning for paid work at all.

There's other issues too and quite a few people I know took that route ("doing what you love") and it lead to career dissatisfaction for various reasons.

Jobs have other "stuff" other than just your work, you may love X but hate working in X industry for various reasons, like work environment, salary, job prospects, etc.

The things you enjoy and are good are probably not even viable paid opportunities. (Nobody's going to pay you to put together model airplanes).

You don't get to "test drive" the vast majority of jobs at home first.

There's something to be about not being invested in your work and, essentially, not making your work the focus of your life.

[http://www.getrichslowly.org/blog/2012/03/18/reader- story-i-...](http://www.getrichslowly.org/blog/2012/03/18/reader-story-i-quit- my-passion-and-took-a-boring-job/)

<comment><USER4> > There's something to be about not being invested in your work and, > essentially, not making your work the focus of your life.

Sure but you spend a good chunk of your life at work, so it's difficult not to want it to be meaningful.

<comment><USER5> "Good chunk" is hard to disagree with. In general, we've implicitly agreed to bad terms, and assume we must work until the "retirement age" of 65. In most developed countries, wages are high enough for this to be completely optional. By being slightly less materialistic, a ~10 year career is possible for above average salaries, and a < 20 year career is possible for most salaries.

Doing something that's not your passion for 40 hours a week for 10-20 years is a heck of a lot more tolerable than doing it for 45 years.

<comment><USER6> Or get paid to do something you enjoy doing. And then it's not 'a bad terms' deal, it's awesome.

<comment><USER3> Just because you enjoy doing something doesn't mean you will enjoy doing it for 40+ hours a week for 45 years.

I actually do enjoy programming and I get paid (well) to do it but going to work is _certainly_ not "awesome," and I would not do it if I didn't have to.

You could absolutely love caring for children but hate being a child care worker because of dealing with parents and issues like abuse and negligent at home among other reasons.

</comment></comment></comment></comment></comment></comment><comment><USER7> Call me old fashioned, but rather than working yourself silly to then spend your money buying time back, why don't we set society up so that you have to work less in the first place to earn a living?

Are we not back to the parable of the fisherman and the banker? [http://www.garywu.net/fisherman-and-banker/](http://www.garywu.net/fisherman- and-banker/)

<comment><USER8> Some people actually love what they do for "work".

<comment><USER9> I don't understand those people. I went out and got a job doing what I love, but it only turned the thing I love into a fucking job.

<comment><USER10> This happened to me too. I find the quality of the boss/leadership mitigates this for me. A good leader can make a job into something you love if it can be aligned to what you want to do. I try to attain this utopia with everyone on my teams.

</comment></comment></comment></comment><comment><USER11> In Belgium we have this great thing called servicecheques (="dienstencheques"). It is a government sponsored project where you can buy a servicecheque for 9 euro's, and you will get 3 euro's back from taxes.

Each cheque represents 1 hour of work such as house cleaning, ironing, meal preparing, etc.

This system is to promote low-wage work, but also has the nice benefit so people can cheaply buy home services. Wages are pretty high in Belgium, so this is an ideal solution for both people doing that kind of work, and working people in high need for such services.

<comment><USER12> Is there a lot of demand for these jobs?

In the US I would have to pay 1.5-2x that for housework, which puts it squarely into a category of value that I just do myself

<comment><USER13> Main reason for the scheme is in my opinion to force people into paying taxes. It is probably a market where tax evasion is the most invisible because already some sort of trust relationship is in place.

</comment></comment></comment><comment><USER14> What these scholars are pushing for eerily resembles good old aristocratic society.

Instead of promoting to consume less (having smaller houses and less clothes, producing less garbage, eating less) they advocate for buying a couple sturdy negroes to do the hard work, while their master can learn to play the piano (and not feel bored/unhappy to cleanup his own shit).

Has the western society already arrived at the point, when there is such an abundance of low-income, unskilled, badly educated people, that the capitalists from Harvard Business School see big potential profits in building a brand new time-saving services industry with all this underutilized labour?

<comment><USER15> Yeah. This is pretty much the same problem I had with the book "The 4 Hour Work Week". The ultimate solution in my opinion is to automate crappy jobs out of existence and to set up social safety-nets for the displaced workers so that their quality of life increases.

<comment><USER14> Crappy jobs still bring some income that can then be spent on consuming, often with the leverage of bank loans, keeping the wheels of the economy spinning. Who could be more striving for buying and consuming than a person who can hardly afford anything?

<comment><USER15> Right. I'm looking at it not from an economics perspective, but from a humanitarian perspective. As much as possible, we should be trying to eliminate drudgery and misery from the human condition.

I remember watching a documentary about a sulfur mine in southeast Asia. The average life expectancy for miners there was something like 2-5 years. It's crazy to me that anyone would even take that job, but:

A. The miners probably didn't know the life expectancy B. The miners didn't have much of an alternative C. The society viewed (views?) them as expendable

I think this is an excellent illustration of an area where automation needs to be done, but market forces won't encourage it. The labor is just too cheap. But just because the economics doesn't work, it doesn't mean we shouldn't do it.

Economics shouldn't be the only consideration.

<comment><USER14> I absolutely agree with you. In the above comment I was just speculating on the possible economical/political reasoning behind the lack of automation. In addition to simply being cheaper than automated solutions (in the short run), cheap labour might also be seen by capitalists/governments as an economical agent, that is more preferable for the economy with regards to increasing GDP, than those on welfare, because the former still has some spare money to spend, and welfare covers only the very basic needs. I agree that it's truly awful that in some extreme cases people have to pay with their health/life to be a part of a consumerist society.

</comment></comment></comment></comment></comment><comment><USER16> Somewhat related: Henry David Thoreau wrote in Walden, "The cost of a thing is the amount of what I will call life which is required to be exchanged for it, immediately or in the long run."

And also:

"I too had woven a kind of basket of a delicate texture, but I had not made it worth any one's while to buy them. Yet not the less, in my case, did I think it worth my while to weave them, and instead of studying how to make it worth men's while to buy my baskets, I studied rather how to avoid the necessity of selling them."

</comment><comment><USER17> For those who read comments here first, I read the abstract, here's my tl;dr:

The people in developed countries who buy themselves things to save time are happier than those who don't.

Yup. Sounds about right.

<comment><USER18> It's a bit more nuanced than that:

The people in developed countries who buy themselves things to save time are happier than those who instead buy material objects.

<comment><USER19> As opposed to the people that buy immaterial objects...?

<comment><USER20> As opposed to those who invest in time saving services.

</comment></comment></comment></comment><comment><USER21> If someone else is looking for what the study actually means by "buying time", this is the closest thing to an answer that I found in the text:

> _In all samples, respondents completed two questions about whether—and how > much—money they spent each month to increase their free time by paying > someone else to complete unenjoyable daily tasks._

<comment><USER22> I wonder what types of jobs cleaners would outsource

<comment><USER23> I once found myself in the odd position of working as a janitor while hiring a maid to clean my floors and surfaces at home (only before having guests over) because I couldn't find the time and energy after I was done with my regular job.

The biggest one I can think of is car repair, or driving itself. Mostly it would probably be indirect stuff like food prep, though-- dollar menus and cheap frozen dinners. For the 'working poor', being able to spend less time cooking is an accessible luxury that's hard to resist.

</comment></comment></comment><comment><USER24> Can someone explain why they're sure this is causation and not correlation? Intuitively it seems to me a happier person would be more inclined to spend money on buying extra time than someone who's unhappy, who would be more inclined to spend on things or experiences.

<comment><USER25> Experiments never show causation. The caution comes from interpretation of the data, which varies between scientist to scientist. You could say the additional experiments they did were not sufficient evidence but the proper response should be a suggestion of a new experiment that would convince you rather than saying "correlation is not causation ".

<comment><USER26> If a theory makes a new and novel prediction which is then confirmed by experiment that is often seen as casualty.

</comment></comment></comment><comment><USER27> I'm actually surprised more people don't buy time.

I used to pay to have my laundry done. first it was part of a 3hrs for $60 of house cleaning I used to pay for in the mid 90s once every two weeks. Then later when I moved into a apartment with no washer. I loved it. Also loved the house cleaning when it was good.

Would love to pay for some kind of shared personal assistant that would deal with whatever. I'm not sure how much I'd be willing to pay. I rent a cube at an office with shared assistants that charge for individual services. each phone call $3 for example. I'd love to be able to pay for someone to deal with all my bills, taxes, mail, basic shopping ...

</comment><comment> wu-ikkyu "he sacrifices his health in order to make money. Then he sacrifices money to recuperate his health. And then he is so anxious about the future that he does not enjoy the present; the result being that he does not live in the present or the future; he lives as if he is never going to die, and then dies having never really lived."

</comment><comment><USER28> I'm not seeing anything described in the article as "buying time" that couldn't also be described as "buying the right to order someone else around" aka "delegating". Surely the most direct way of buying time is by taking a pay cut in exchange for more time off, or even taking unpaid time off. It occurs to me there may be a good proxy for this in comparing similar tech jobs in the US vs the EU / UK. The latter pay less, but receive substantially more time off.

<comment><USER29> > Surely the most direct way of buying time is by taking a pay cut in exchange > for more time off, or even taking unpaid time off.

We don't get those choices. I tried for YEARS to engineer a long-term part- time career in the software industry, and I couldn't get it to happen. I'm perfectly happy to trade more free time for less money, but there are just no takers out there. The industry isn't interested.

As far as taking unpaid time off -- usually, that happens after you've quit your previous job and before you've started the next one.

<comment><USER28> I can think of two ways you can trade money for time as a SWE: 1) Amazon has started to offer part-time jobs for SWE's ([https://www.flexjobs.com/jobs/telecommuting-jobs-at- amazon](https://www.flexjobs.com/jobs/telecommuting-jobs-at-amazon)) 2) relocating from the US to UK / EU gives you 25-100% more PTO and shorter hours in exchange for lower salaries

<comment><USER29> 1\. Interesting, except the part where Flexjobs wants you to pay to look at job listings. Primary indication of a scam.

2\. Yes, it is super-easy to get a visa to work in the UK or EU.

</comment></comment></comment></comment><comment><USER30> What are most common/important time saving services? (couldn't find any example in the original paper)

<comment><USER31> Home cleaning. I was reluctant to let a stranger clean my home but it is totally worth it. My maid cleans home better than I ever did, and she is faster.

I used to use laundry service, that was amazing.

</comment></comment><comment><USER8> A full article with click-able links!

Now entrepreneurs need to read this and invent robots that does all the house chores!

<comment><USER32> We have been working on that for decades, vacuum cleaners, washing machines, dish washers, ready meals, etc. It seems we aren't great at allocating the time these devices free up.

<comment><USER8> When it takes two hours for a robot/machine to do something that would take you five minutes, most people will think that's one hour and 55 minutes wasted, while it's actually five minutes _saved_

</comment></comment></comment><comment><USER33> Did someone find in the article the actual services people used? I am struggling with what would they be.

House cleaning? Food delivery?

<comment><USER34> I pay for ironing, gardening, cleaning, and handyman services. Super useful and means I don't really need to do much housework other than cooking.

</comment></comment><comment><USER35> This is really interesting. I've thought about this. If you live in an area where a living wage is low enough to make this work, it could be really great for everyone.

Say for example, you hire a college student for $15/hour in an area where minimum wage is $10/hour and their rent is $400/mo to work part time for you buying food, cooking food, doing laundry, and cleaning your house. They make $1,200/month, plenty to live comfortably as a college student while still having time to study. They need medical coverage from their college, but this seems to be offered.

Then you don't have to worry about those tasks anymore and life becomes much better. If you make good money, that $1,200/mo is no biggie. Win/win.

</comment><comment><USER36> I think that if I was able to afford to buy time, I would be happier, but not necessarily because I was buying time.

</comment><comment><USER37> "Dutch millionaires don't spend money to save time." I had to laugh :)

</comment><comment><USER38> Complication: anything you are good at you will want to practice to improve. And deliberate practice is by definition frequently uncomfortable (not enjoyable).

</comment><comment><USER39> I can confirm this anecdotally. I bought some thyme just last week and seeing the spice shelf restocked made me very happy.</comment>


Not having a job is bad. Having a job that you hate is worse. - <AUTHOR> http://www.developingthefuture.net/not-having-a-job-is-bad-having-a-job-that-you-hate-is-worse/

<comment><USER2> Hating your current job is controlled completely by you and your attitude towards it. The hatred you feel is purely your emotions. There is something to be said for both learning to enjoy life and seek happiness wherever you are, even if that means a data entry job at a bank. Cal Newport has a good article on this:

[http://calnewport.com/blog/2011/02/14/zen-and-the-art-of- inv...](http://calnewport.com/blog/2011/02/14/zen-and-the-art-of-investment- banking-when-working-right-is-more-important-than-finding-the-right-work/)

Every job has unglamorous things about them. I'm not saying you should stay at one job forever or never quit even if things aren't going well at work. I'm saying that switching jobs because you hated your old one puts you into this continual pursuit of some higher calling / ideal job that may never come. Until you search, you're unhappy and every small minor inconvenience in a new job will encourage you to pack up and move elsewhere. Embracing the unsexy parts of life is the best way to conquer it. And then you can, over time, tweak and improve it. Whether that means getting a promotion so you're in a position that has more autonomy and more impact or leveraging the skills you learned at a job that you thought you didn't like to get a job you DID want to do at another company.

I just think it's a bit more nuanced -- one should not just quit their job because they dislike it.</comment>


Learning Clojure: comparing with Java streams - <AUTHOR> https://blog.frankel.ch/learning-clojure/5/ <comment><USER2> Also, this bit:

        (->> justice-league
          (map #(:vehicles %))
          (filter #(not (nil? %)))
          (flatten))

can be simplified to just `(mapcat :vehicles justice-league)`

<comment><USER3> A few notes on why this is so:

\- Keywords (i.e. `:vehicles`) can be used as getter functions, as covered in the OP.

\- mapcat (like most collection functions in clojure) treats `nil` as an empty sequence

</comment></comment><comment><USER4> Not a lot of comments here for the number of upvotes, but the trend of the comments strikes me as lopsidedly negative and I'd like to throw in something positive to the mix - Clojure needs more people publishing beginner friendly code even if it isn't using some specific function that does the same thing with less typing. So, y'know, I'm really glad we've got people out there who are documenting how they manage to get things to work under the new and generally unfamiliar paradigm of "practically functional". Especially since Clojure's Achilles heel is the combined double-whammy of its incoherent error messages and the learning curve for a beginner trying to pick up how to do common tasks in a world with 'no variables'.

We have a programmer with >15 years experience, who is learning a new language and in the process producing code that is neat, functional (in the sense of no bugs) and not unreasonably verbose. Clojure is a language that is dense with clever ideas, it takes a lot longer than a few months to get good at using them if they are new. The terse comments throwing out improvements or making corrections seem a little harsh, I'd hoped to see people talking more about concepts than naming functions.

<comment><AUTHOR> Author here. Many thanks for your encouragements!

Actually, I didn't feel any comments were particularly harsh. I'm learning from most of them. This is exactly the feedback I'm searching for: idiomatic Clojure.

</comment></comment><comment><USER5> The equivalent of `flatMap` is not `flatten`. Semantically `flatMap` is equivalent to `(comp flatten map)` – hence the name! – but Clojure does offer it as a single function named `mapcat` ("map and catenate").

<comment><USER6> > Semantically `flatMap` is equivalent to `(comp flatten map)`

With the caveat that `flatten` is recursive and can handle a mix of collections and non-collections, while `mapcat` is non-recursive and every value returned by the mapcatted function must be a collection or nil.

(Identity returns its argument.)

        (flatten [1 [2 3] [[4 5 6]]])
        > [1 2 3 4 5 6]

        (mapcat identity [1 [2 3] [[4 5 6]]])
        > IllegalArgumentException Don't know how to create ISeq from: java.lang.Long

        (mapcat identity [[1] [2 3] [[4 5 6]]])
        > (1 2 3 [4 5 6])

        (flatten [nil [1 2 3]])
        > (nil 1 2 3)

        (mapcat identity [nil [1 2 3]])
        > (1 2 3)

<comment><USER5> Thanks, I wasn't aware that flatten is recursive.

<comment><USER7> That's sort of implied by the name. A non-recursive flatten wouldn't really flatten much, and would be called join, or concatenate.

<comment><USER5> The flatten functions I know from statically typed languages (eg. Rust, Scala) only flatten one level. So flatMap is actually more or less equivalent to (flatten . map).

<comment><USER7> Interesting. My experience is the opposite - in dynamically typed languages like Erlang, Clojure or Common Lisp, flatten is understood to _flatten_ lists, and flatmap is something else entirely - from what I gather, it's Scala that made the weird choice of naming a concatenation function `flatten`, thus creating `flatMap`[0], and then people started borrowing the name.

From this I provisionally conclude that "flatten" being non-recursive is an artifact of Scala confusing things; not an unusual thing in my experience with this language, but this time it seems to have gotten out of hand, instead of being contained within Scala ecosystem.

\--

[0] - Even Haskell calls this `concatMap`, see [1].

[1] - [https://stackoverflow.com/questions/49843262/where-does- the-...](https://stackoverflow.com/questions/49843262/where-does-the-word- flatmap-originate-from)

</comment></comment></comment></comment></comment></comment><comment><USER8> > and Clojure's syntax is pretty limited

Erm, what? I am confused by the use of the word 'limited' in this context.

<comment><AUTHOR> I confirm: the syntax is limited. There are only a few keywords and langage constructs. The power is in the number of functions made available, or the ones you create for yourself.

<comment><USER8> Doesn't Clojure have reader macros? The whole point of lisps is that you can extend them.

<comment><USER9> Actually, Clojure does not have reader macros, because it was thought to be the biggest cause of the lisp curse.

<comment><USER10> Nit: Clojure does not have _user-defined_ reader macros. There are quite a few built-in reader macros, including #? added for reader conditionals.

<comment><USER9> Fair enough, though definitly a nitpick :p

</comment></comment></comment></comment></comment></comment><comment><USER11> Out of curiosity, can anybody comment whether the Clojure versions of these are "lazy" in the sense that if you only take the first element from the result, does the the stream process all the results or just the first? eg:

        (first (map #(extract-name %) justice-league))

Does it map all the elements or only the first? This is actually the key aspect of streams, and more important in many ways than whatever syntax sugar is available to invoke the operations.

<comment><USER12> In Clojure, all of these are lazy by default.

</comment></comment><comment><USER13> It seems strange to me that `(map extract-name justice-league)` isn't listed under "idiomatic improvements." Supposing you already had `extract-name` defined for some reason, it's cleaner and simpler to just map that unary function than wrap that function in an anonymous function - whether that wrapping is done with the `#(...)` reader syntax or explicitly constructed with `fn`.

<comment><USER5> Or indeed `(map :name foo)` instead of the suggested (and redundant, linenoisy) `(map #(:name %) foo)`.

</comment></comment><comment><USER9> Did I miss the Java counterpart of the examples?</comment>


Amazon WorkMail - <AUTHOR> https://aws.amazon.com/workmail/ <comment><USER2> Unfortunately, it's incompatible with Outlook 2016 on Mac.

<comment><USER3> From the FAQs:

Q: Can I use Amazon WorkMail with Microsoft Outlook on Mac OS X?

Yes. Amazon WorkMail offers native support for Microsoft Outlook 2011 on Mac OS X. Support for Microsoft Outlook 2016 will be available soon.

However they don't say how soon...

<comment><USER2> They are just supporting an obsolete version of Exchange, so, I won't downgrade my Outlook just to use WorkMail - Office 365 looks like a better option for now.</comment></comment></comment>


Daily Intimate Video Details of Our Start-up Life - <AUTHOR> http://www.youtube.com/watch?v=1DZJKqT8dqY

<comment><USER2> Video is private.</comment>


Women in Open Source - <AUTHOR> http://jamesgolick.com/2013/10/16/women-in-open-source.html

<comment><USER2> James, I tried to email you but the link wasn't working for me for some reason. I can be reached at: reel india @ yahoo dot com ...</comment>


Google Bans Disconnect.me from Play Store - <AUTHOR> https://blog.disconnect.me/google-just-banned-our-new-android-app-before-it-even-launched-another-example-of-why-privacy-friendly-alternatives-for-android-app-distribution-are-critically-important

<comment><USER2> Credit to Google for creating such a powerful ecosystem and wresting increasing control of it. Amazing how the "open source" Android operating system has so many controls attached to it by Google.

So we're now at a point where they have control over the code that lands on ~80% of smartphones, they control the app ecosystem that most rely on for it, they control most of the data including default search etc. that comes from the use of it and the control only grows more powerful every day. As Android gets bigger, devs cannot ignore it and thus are forced to play in their garden.

More disturbing, perhaps to some, is that Google's business is built on advertising which is fueled by your personal data. Unlike Apple, Blackberry, Microsoft, etc. they don't make money off the product (your phone), they make money off of you (the user). They are playing a completely different game than the other device manufacturers and the implications of them winning are pretty serious.

</comment><comment><USER3> That's seriously messed up. There are tons of adblockers on the Play Store, why has Disconnect Mobile been singled out?

BTW, I'm currently using Freedome which from what I understand is very similar to Disconnect Mobile

</comment><comment><USER4> It's a walled garden. Why do people keep developing for walled gardens then acting hurt when they're summarily evicted?

<comment><USER3> Because developing for the alternatives (Firefox OS and Ubuntu Touch) don't allow people to make a living.

<comment><USER4> I'm not saying that people shouldn't develop for walled gardens if the cost- benefit works out for them personally.

I just wish they'd stop whining about the cost though.</comment></comment></comment>


Announcing VCV Rack 1.0, the largest update since its launch in 2017 - <AUTHOR> https://vcvrack.com/Rack.html <comment><USER2> I can't praise VCV Rack enough. It has helped an amateur synth enthusiast like myself learn how modular synthesis works without having to invest hundreds of dollars into it. You can make such amazing sounds with this free open-source project, and the workflow feels incredibly natural. I love the community support behind it, as there are tons of developers creating new and exciting modules. Since I'm a developer myself, I'm starting to dig into how I can also contribute to this amazing community.

If you haven't had the chance to check out VCV Rack, I highly recommend it.</comment>


Ask HN: Enduring popularity of Chrome 49, 61, and 63? - jake-low According to https://gs.statcounter.com/browser-version-market-share (see the CSV for unabridged data), Chrome 49, 61, and 63 seem to be oddly popular today, given their age.
- Chrome 49: 2016-03-02
- Chrome 61: 2017-09-05
- Chrome 63: 2017-12-05
Yet these three browsers all have greater marketshare than Chrome 72 and 73 (from early this year). Chrome 49 and 63 seem to be slowly declining, but Chrome 61 actually increased over the first half of 2019 (from 0.07% in Jan to 0.47% in July).
Are there operating systems that ship with these specific versions? Organizations that haven't upgraded? Or are other browsers (or bots) using these user agent strings?
Extra thanks if you can also tell me why Safari 5.1 has 0.77% market share. Are that many people still running Snow Leopard? <comment> jake-low In case anyone reading this in the future cares, I learned that Chrome 49 was the last release to support Windows XP and Windows Vista [0]. Google dropped support for these operating systems in April 2016 with the release of Chrome 50.

[0]: [https://www.ghacks.net/2015/11/11/chrome-support-for- windows...](https://www.ghacks.net/2015/11/11/chrome-support-for-windows-xp- vista-and-mac-os-10-8-ends-april-2016/)

I don't know what's up with 61 or 63, but perhaps there's a similar story there.

<comment><AUTHOR> Interesting. I wonder if 61 and 63 had broken auto-updaters?</comment></comment>