skysight-inc/HackerNews huggingface dataset:
It'll be immensely easier to get a proper investor if you can generate enough sales to break even (i.e. to pay for your costs), because that's an important step to demonstrating viability and avoiding the "too early" argument.

So, given what you already know, how many customers do you need to generate enough revenue to pay for costs, i.e. what slice of the market should you address? Define that segment of the market, e.g. "kindergarten teachers in London" and devise the tactics to get them on your "Buy now" screen, and then to get them to click the "Pay now" button.

Sales strategy really depends on what space your business is in (especially B2B or B2C), but a basic first step could be something like "I'll create a Google Ads campaign for that target, measure how they respond to the landing page and integrate Intercom so I can discover/answer their questions when they reach the website". You'll learn new things about what customers think of your service - pricing, features, etc - that will help you define the next step.

If you haven't received a payment, I'd focus on converting those 14 prospects into paying customers and learning why they have or haven't purchased. Then, if you're a B2C business, focus on increasing that number x10, i.e. get to 100 paying customers, then 1000, until you break even. This is when an investor, in my mind, will be useful: to accelerate growth, and for that you need some sort of growth beforehand (which will also be your main argument when negotiating an investment).

When you are at this point, your premise will be "I'll use this money to hire a senior sales executive specializing in X to devise a proper sales strategy, and/or a senior marketing person to devise and run marketing campaigns").
TBH I've been thinking long and hard about that issue since I still have lots of interesting plans, and for the next step in my career (which is probably still a few years away), I already decided I'll do what it takes to find someone who's aligned with me on that very topic and can fill the role for shares and cash.

I think it's a little weird but workable, I have at one time worked with someone who had a quite similar disposition (he was more of a product and sales guy) and he literally hired a managing director for his newly founded company so he could do the stuff he was best at — on the topic he chose himself, in the company he founded himself.
PODCAST: Peek into the Future: 5 New Game Changing Technologies
How a plot to kill Kim Il Sung ended in mutiny and murder
The passwords aren't protected somehow from copying?
> you will need to religiously avoid repeating the past.

Rust is not a religious language, regardless of what some people may think. It's even in the name, which evokes something practical, well used, and a bit worn.

> If you're already of a mindset to have a Rust++

Language design is about trade-offs. Do I think Rust is generally an excellent language? Yes. Does that mean that I believe we have solved programming languages, that there will never be a language better than Rust? No. Someday, Rust will be the old incumbent, and a new language will overtake it. That's how progress works.

In the end, as I said, this was a very tough call. In the end, we decided to be hardline[1] about one thing, and one thing only: memory safety. Does Rust care about program correctness? Absolutely! Does it care about it as much as memory safety? It does not. There's several PLT features that could help improve program correctness that are not in Rust. They're not in it because it's a balance. Including them would harm several of our other objectives for the language.

This RFC was one of the most discussed at its time. 160 comments! https://github.com/rust-lang/rfcs/pull/560

We would have loved to say that it's always on, but that's just life. Nothing is ever perfect. Rust certainly is not.

1: note that I said "hardline" and not "religious" here even; even Rust's most sacred principle, memory safety, has a keyword built into the language that lets you subvert it!
I have to handle quite a lot of Excel document at work, much to my despair. Unfortunately we are not using GIT, but SVN.
I ended up creating a small tool that extract the vba, named ranges plus the sheet in this format: "cell_adress,type,format,value"
I have to commit those files alongside the spreadsheet, which is not great but had helped me a lot.
Nice to hear others are working on the problem!
If you throw me into a vicious cycle of forcing me to allow
more stuff at each cycle, I go away, especially on retail sites.

Avoiding dependencies to capture the 0.01% long-tail of users that heavily block JS seems like a massive waste of time for anybody but the most specialized of retailers - especially since those abandoned visits aren't going to show up in anybody's analytics...
Samsung Patents a Flying Display That’s Controlled by Your Eyes
This tool is useless because it does not show changes relative to your package.json
I'm also curious to see this. I think a lot of the really strong programmers I know do this instinctually where as I have to be more deliberate breaking things down. Perhaps some of it is that they are able more more naturally hold it in their minds than writing it out on a piece of paper like I do. Maybe they "learned how to learn" in that way better than I did when they were younger.
I think we both agree that it makes no sense to believe that the financial market is an actual quantum oscillator, and it's somewhat clear in the paper. But I just suffering because in a few days we will see a horrible press coverage with the title "Science says financial market is totally quantum".

I try to avoid reading this kind of papers, but I give it a chance. I only skimmed it, so I'm not sure my takeaway is totally accurate. If you can read it and make any corrections I'd be happy.

They model the financial market with 3 methods.

* geometric Brownian motion (GBM) that has 2 parameters

* Heston that has 1 parameter

* "Quantum" that in their case has 6 parameters

The quantum method is actually the decomposition of using Hermite polynomials multiplied by a Gaussian. This is the base that has the solutions of the quantum oscillator, but they pick the coefficients without any justification. They probably can use whatever smooth localize base of L2(R) they can find. I guess they can use some smooth localized wavelets and get almost the same result (and they can choose one with compact support).

It's possible to use these bases wavelets/HermiteXGaussian/whatever to decompose any signal, like sound or an image, but there is no relation with a background process. In particular that HermiteXGaussian is good doesn't prove that there is a quantum component of the market, only that orthonormal decomposition is a good mathematical tool.

The main differences between the models in their work is that the first one has 2 parameters, the second one has 1 parameter and the "quantum" model has 6 parameters. (Why 6? Why not 5 or 7?) It's easy to get a better fit using 6 parameters instead of 2 if your selection of the model is not horrible, and you can tweak the model a little, and you can pick the time frame, and you publish only the model that has the best fit. This is totally standard, nothing shady, but it may give the impression that the selection of the model has some meaning.
Show HN: Twatter – Find the best available Twitter handle
You do what any sane package manager does and pin the version. Having the option to declare a dependency version as >= 4.0.3 is a bug, not a feature.
I don't think your solutions will work. It's impossible to get time estimates right for building software. Too many variables in solving the problems, not only in writing code and testing it, but also including open office disturbances and meetings.

I understand product owners and businesses wants estimates but software engineering is not making a car. Forcing programmers to estimate their every task makes for a very bad work environment. They are not robots.
UK government to use church spires to improve rural internet connectivity
My thoughts exactly. This is so unbelievably bone-headed.

I want to believe that this was slipped in by a small rogue group within FSL, and that its not something everyone approved of...
Already hurting them, and has been hurting them for almost a decade, even more at this point.

I was thinking about continuing my education to do research in distributed computing, but I learned midway through my undergraduate, majoring in computer science with the "Software Engineering" track, that our field was already playing catchup with industry. I learned this because I worked for a startup my senior year. Their pace, learning, and new innovation was nothing our dusty class with out of touch professors were able to keep up with. Even the ones that were trying to be "cool" by teaching stuff like Ruby on Rails (mind you, this was in 2008 so it was the hip thing at the time) instead of Java Server Faces, it was just bad. You could tell the professors had no idea what it took to build software. After being in the industry about 10 years now, probably the biggest joke of a course I took and arguably a complete waste of money was CS 3100 -- Software Engineering. It was an entire class on Object Oriented programming with Java, and using UML diagrams to model everything, and CRC cards and all this object oriented cruft. Everything was an object nail to drill with your object hammer. It was at this point I was becoming more familiar with LISPs and dynamic/functional programming languages, and I started to care more about behavior rather than creating a tangled web of leaky abstractions.

Anyways, why go get my masters in distributed computing when I know it will be hilariously out of date and all the best innovation in distributed computing is coming from large, internet-scale companies such as Twitter, Google, Netflix, Facebook et all? But unless I could get into Stanford, which is essentially the big tech firm's R&D arm, I don't see the point. I was thinking of the Georgia Tech OMSCS, but I think I am too jaded at this point.
Oxygen ions may be an easy-to-track sign of life on exoplanets
I tried all variations on the theme - different sleep patterns (getting up early at fixed time, waking naturally), diets (low carb, no processed food with excess sugar etc etc, workouts (running, working with weights), no coffee, just 1 cup of coffee, max 2-3 cups of coffee... sadly without significant effect. What I also notice that my lack of focus is not tied just to productivity - I can't even finish Lord of the Rings movie in one sitting, and I LOVE it.
"How do we know that FSLabs don’t use this, just because they say so?"

How do you know the main executable doesn't do the same thing? How is trusting them not to run this .exe different from trusting them not to secretly implement this functionality in the actual program?
My retired sister is doing some odd-job consulting for whatever reason. She headed a group in the 1990's that wrote a major tire manufacturers MIS code on IBM computers.

Recently she texted me - she'd had to change a module written in 1987. Written 30 years ago, and still in production. Not a person left at that mega-corporation who would have any idea how to do it.

Of course her group's old code, still in production, has been hardly touched since she left. And the code IT depended upon still has to run; thus the 20-year-old code requiring 30-year-old code to function.

The kicker: she's going to stop consulting in a few months (they don't know it yet). It will cost them millions to retool/retrain with some modern system.
Oh, that's a bummer. I'll fix that!
How is that kind of carelessness not a form of malice?
There's a special level of Hell that involves streaming xml processing and cobol. Since cobol lacks dynamic memory allocation (speaking of cobol 85 here) and you don't generally build things like linked lists or trees, there's a limited number of things you can conveniently do with streaming xml data. Many cobol programmers are left with a feeling of despair, I wager.

The Sapir-Whorf hypothesis is certainly real in programming languages[1].

[1] http://wiki.c2.com/?BlubParadox
20k lines of Perl is a different beast from 20k lines of Python, or 20k lines of verbose Java

Very good point. We’re all familiar with the “I can do ${lambda} in ${n} lines with ${lang} language”.

It seems to take me 10x more lines to do something in Java vs. Python, and 10x lines to do something in Python vs. Perl. Except that the Java is laborious to read, the Python is nicely readable, and the Perl will never be understood by a programmer.

I had great fun writing Perl many years ago but I used to joke that Perl was a “write only” language.
For CalDAV: http://agendav.org/ is much prettier than infCloud, but actually has it's own php-backend and mysql database. A bit heavier and is not strictly only-CalDAV. Could be a viable solution though.

For CardDAV: https://github.com/owncloud/contacts could be used as a frontend, since it advertises it's talking to CardDAV-backend, but it's not actually deployable as a standalone interface.
It's better than infCloud both architecture-wise and UI-wise, and could be the best opensource solution available, if you're willing to adapt this frontend to stand-alone usage (or integrate into whatever you need it for)
Trouble is there are no amphetamines as meds in my backwards country.
Two Interesting Micropatches for 7-Zip (CVE-2017-17969 and CVE-2018-5996)
Don't forget licensing issues, which a lot of smaller companies maybe just look the other way on. That code you just copied and pasted from the web--what was it licensed under? Is it compatible with your company's software licensing? That 3rd party package you just deemed a critical dependency, how is that licensed?

The "grownup" companies I've worked for either explicitly ban or discourage "Programming by copy/paste from the Internet" and have review processes to gate inclusion of 3rd party code so that the licensing can be reviewed.

Licensing issues aside, 1. as a tech lead, I would feel obligated to act as the gate for bringing 3rd party dependencies into the project, and 2. if you cut paste code into my project, then during code review, you should be able to explain in great detail what it does. If you can't, it gets reverted.
Life on an iPad
The whole point of the service being 24/7 availability, I can see why he'd stay there overnight
Some interesting links to click and discussions to read when I'm procrastinating.
https://www.sba.gov/blogs/selling-us-foreign-business-should...
It's not about auditing every line of code. It's about a chain of trust.

I can not imagine that the security of Facebooks servers is at the mercy of a chain of anonymous coders.
Step 0: write a book about how to be a digital nomad

Step 1: spam about it

Step 2: PROFIT!!!!!
I hope you're not indicating the table corresponding Egyptian hieroglyphs with modern words, because that is by far one of the worse sections. It's an embodiment of confirmation bias. Let's look at arm, which uses English as it's example. Ok, well obviously English didn't exist contemporarily with Egyptian, so let's go backwards. Proto-Germanic gives armaz, which isn't super surprising since anatomical terms are tend to be relatively stable. But PG began developing in Scandinavia around 750BC, still too early for old Egyptian. So let's go back to PIE, where we get the root h₂(e)r-, "to put together". So when we drive back to the contemporary language, we lose the connection to the meaning. And when we look at the development of that root into child languages, we get many related forms, with the arm branch only being one of them. We also get words like Latin armentum, relating to draft and herd animals. Or artus, relating to being close or dense. Or Greek ἁρμόζω, related to putting together. (Ancient Greek tends to be more conservative towards PIE.) We also get a lot of derivitives starting with R, because A derived from the PIE combination h₂e. So when the E was dropped in PIE forms, R tended to be the kept form. The final point being, that if there actually was such a strong symbolic influence that it managed to survive thousands of years to make it to modern English, you wouldn't expect all these other forms to have also developed using the same rules that led to arm. And that's where the bias comes in; ignoring all these other developments consistent with the exact same pattern that led to English arm.

raoulduke already addressed the comments regarding attempting to extend it without taking into account my prior note regarding transcription of Egyptian.

Morse code is an encoding, not a language. The same string of Morse code could, theoretically, represent two different meanings depending on which language was actually encoded. That's like trying to prescribe some sort of attributes to language by looking at ASCII. It's meaningless; they're artificial constructs with mathematical patterns because they were constructed with mathematical patterns...
> What does the author gain from this statement? Now, if I were to be interested in this book, I would now be not interested and would encourage others to avoid it.

That's not very rational. That your feelings are hurt has no impact on how good or bad the book is.

That is a great example of a previous conversation about feelings here on HN. https://news.ycombinator.com/item?id=16384453
I joined in college and HN has always been a leading indicator of technology for me. At first I was a lurker and around 2009 all I saw were articles on Rails and Bitcoin.

Fast forward 5 years of time wasted by a young adult and Bitcoin becomes a missed opportunity (I know, still wasn't, but how could anyone know for sure?) meanwhile Rails hype plateaued here on HN.

Anyway, now anytime there's heavy mention of anything, I do my fair share of due diligence and have been a lot more successful because of it. Thanks HN!
No, just via chat/PM
Most of the dependencies installed for a hello world React app are not runtime dependencies.

I don't know if there's a real "standard operating procedure" or not, but it seems to me that it's the responsibility of each project maintainer to evaluate the fitness of a particular dependency for that project.

Just like with every package manager that I've ever heard of, you're responsible for what you install. I'm sure you can get buggy packages with poor test coverage via apt-get install / brew install / gem install / whatever-else install.
This is a pretty good article on alternatives.

https://www.myusacorporation.com/articles/us-bank-account-fo...
As their projects grows, they will find the need to copy/paste their code snippet all over again. As time goes, they will move on to other projects and other devs will have to understand their implementation of the code. As new browsers (and mobile devices) come out, people will have to refactor and improve their snippet of code.

Their colleague's version of the task however will simply require to update "react-scroll-to-component" to get new fixes. The component has a few closed issues and some opened ones. As there is community activity on it, they might as well leverage it.

Any new developers on their team will simply need to read the repo's documentation and examples. I doubt their version is documented.

The package "react-scroll-to-component" also has the advantage of living in the react's ecosystem. It isn't a few line of hack'ish Javascript but an actual component that you can configure in a React application. Any next places they will need to add scrolling behaviors will be an easy job. His snippet however will require playing in the source JS over and over again.

While I agree that "INSTALL ALL THE THINGS!!!" is a bad philosophy, in this case I agree with their colleague. That component only has a few dependencies and add pertinent features to the project.
Your First Thought Is Rarely Your Best Thought: Lessons on Thinking
I feel that there is some naiveté in this perspective, although the OP does touch on it somewhat. A novice most likely would write their code in a very monolithic fashion. That same approach fails significantly with larger code bases.

As a seasoned developer I have come to realize that one of the most important things to be a good developer is organizational skills. Unfortunately it seems that ways to organize code bases, including things like naming, mutable state, modularization, cohesion/coupling, etc., are not as well developed or understood in general in our industry as they should be.

While understanding and knowing the right algorithms is important. I sometimes wonder if our emphasis on the knowing algorithms off the top of your head interviewing process contributes to putting the emphasis on the wrong things in software development.
35 LOC is absolutely worth a package, unless your package manager is really bad; that means 34 fewer lines in your codebase.
Optional parameters are tricky because of type inference. See this tracking issue: https://github.com/rust-lang/rfcs/issues/323
In case anyone wants to listen to the recent podcast: https://www.macrovoices.com/360-chris-cole-volatility-and-th...
PatientKeeper Is Looking for a Senior Java Web Developer
A Brief History of the Cheese Curl, Junk Food’s Happiest Accident
It’s not Clojure, but the practical chapters in the book Practical Common Lisp might be a good way to get a feel for the way a Lisp works in a practical application.
help me out, what's DN?
So you first recursively read the code and the code of all the dependencies? And then pin it?

That sounds like a lot of work. Compared to copying/writing 30 lines.

How do you know the pinned version and it's dependencies do not get changed by the maintainers?
Frivpn: multithreaded OpenVPN client
You think on some PowerPoint a manager had the bullet:

* break compatibility with Outlook
Well like I said, it's a difference in mindset. For the most part I think a lot of the things people pull in dependencies for aren't actually that complicated, especially for the limited use they have for them.

I think package managers have made things much worse, because if you're going to have dependencies you shouldn't have such a complicated relationship with them that you need a tool like a package manager to deal with it, but package managers encourage that behavior. I don't think we should need things like Nix just to be able to put together a stable and consistent system.
>It's not always easy to work for a month from a Caribbean island while squeezing in scuba certifications

(ง'-')ง
1,2,3,4 shall we declare Information War? (#RememberLitvinenko)
Are there any Russian speakers reading Hacker News wanting a pathway to influence the 2018 Russian Election? This is about honest, research-integrity Russian speakers worldwide, and Russian citizens in particular, taking back joint control over the neutral "Point-of-View" of Russian Wikipedia. Specifically, aligning these two Wikipedia articles with BBC Coverage:

BBC Coverage: http://www.bbc.com/news/uk-19647226

English Wikipedia: https://en.wikipedia.org/wiki/Alexander_Litvinenko

Russian Wikipedia: https://ru.wikipedia.org/wiki/Литвиненко,_Александр_Вальтерович

The key to this is an accurate, neutral point-of-view over the Litvinenko Polonium poisoning. Not Putin's or Project Lakhta's or Russian Politicians' false rendering of the facts... the facts according to Russian-speaking neutral fact-finders taking back control over Russian Wikipedia.
Make it easier to understand exactly what any library function does from its signature, i.e. strong norms of functional purity (perhaps at the language level) combined with some way of representing effects (language-level effect systems, monads and the various constructions on top of them, or something else).