It should be Tb/s
HN user
LawnboyMax
[ my public key: https://keybase.io/lawnboymax; my proof: https://keybase.io/lawnboymax/sigs/MW3PpKR0oqf8MzD0opC22GxUQQ-NTTkCsRy4vvvs6Kg ]
Interestingly, Galileo's Sidereus Nuncius mentions "Galileo Galileo" on the cover.
https://en.m.wikipedia.org/wiki/Sidereus_Nuncius
I wonder if this is at all related to the question asked in this article.
Really good overview: https://arxiv.org/abs/1702.01715
I really enjoyed https://woebot.io/ for a few months. I was really surprised at its depth when I kept on discovering new flows after weeks of interacting with it daily.
But that kind of chatbot is surely an exception. And Andrew Ng is the chairman of WoeBot, so I expected it to be good quality.
The hard part is not making (launching) the bot, but maintaining it and making sure it stays usable and useful. A very important piece that is missing from many open-source chatbot frameworks is some sort of web-based administration tool.
You need a tool that is capable of the following:
- Collecting analytics about each session, so that you can notice user problems early.
- Providing an interface for improving your training dataset using new data from actual user interactions.
- Evaluating the model after each update (simple accuracy metrics are not good enough; it is possible to maintain good accuracy and have one of your core flows messed up after re-training).
Even when you have an admin tool capable of these, you need one or more people (depending on the size of the bot) to review historical sessions and curate newly generated training data almost daily.
Here's a talk about this research that Philip Daian gave at Devcon 4:
https://slideslive.com/38911605/smart-contract-security-ince...
Probably my favourite talk from that conference.
There is no incentive for a company to spend their time explaining what you did wrong at an interview if they are already sure they don't want to hire you. And if the reason for not choosing you is not very constructive, there's no point at all in sharing it.
Your best bet might be to ask about how you did at the end of the interview. I had some luck with interviewers explaining me a solution to an interview problem that they would consider perfect.
Try Intermittent Fasting. I.e. eat only during 8/6/4-hour window every day (I personally prefer 6).
I find it much easier to live with the fact that at certain times I am not allowed to eat at all, than trying to control what I eat at all times. It also forced me to be more careful about choosing the right food during the eating window; I now want to get as much nutritional value as I can from my food, since the total amount of food I manage to eat in 6 hours is not that large.
The first week might be a challenge in terms of managing your hunger, but it gets easier after that. I now see hunger not as a signal that my body is starving, but a signal that my body gets used to being fed at certain times of the day. I now feel hungry only about an hour before my eating window.
I find skipping breakfast and any meals after 6 PM the easiest; but of course this might be different for you. It's just with this schedule your colleagues won't even notice that you are fasting unless you tell them.
I am using the current Python version and tried type hinting. I don't see how it can help much, since types are not enforced;especially when interfacing with not-so-well-tested modules that don't use type hinting and can sometimes return values of unexpected type.
It's definitely a neat feature when writing an application from scratch that interfaces with few other modules or only the well-tested ones.
Strongly agree with author. I really like Python and at one point thought that it makes sense to write almost any project in it, since it's so versatile and I know it pretty well.
After working on a quite large application and having to use lots of assert(isinstance(arg, type) at the beginning of almost every function, I began to think that a strong type system is very much needed for large projects. I believe this was one of the reasons why Twitter moved from Ruby to Scala.
I still love to use Python for hacking something quick for myself. But I also look at some popular strongly-typed languages now and hope to get better at one of them soon.
MIT Technology Review published a piece on one possible CO2 extraction solution just a few days ago. Besides being somewhat expensive, it also needs to occupy substantial physical area.
https://www.technologyreview.com/s/612928/one-mans-two-decad...
I would say he has enough skills to get an interview at those companies. Solving coding interview questions is a skill that has very loose correlation with any side project/real work experience IMO.
Correct, Rasa is text-only. Core purpose of Rasa NLU (https://github.com/RasaHQ/rasa_nlu) is user text to intent translation (with entity extraction); for Rasa Core it is mapping user intent to assistant response . Speech-to-text is one layer above these and Rasa doesn't handle it.
The easiest way to use it with voice is to connect it to a platform that supports voice input.
I highly recommend Rasa Core (https://github.com/RasaHQ/rasa_core) if you are looking for an open-source virtual assistant. Very active and helpful community, and lots of input channels for integrating your assistant with messaging platforms (https://rasa.com/docs/core/connectors/).
I am not affiliated with Rasa, just had a really good experience developing a few projects with it.
I wish Eiffel Software changed their dual licensing business model so that more people would consider using the language in production.
Related TED talk How language shapes the way we think by Lera Boroditsky: https://youtu.be/RKK7wGAYP6k
Difference in color perception ability is mentioned towards the end.
I believe or has higher precedence than := in this case thus the syntax error. Wrapping := in parentheses, like the other commenter suggested, resolves the issue.
Remember reading this article in 2015 and then trying to do some simple glitching using C.
Simply inserting an additional NULL for a specific RGB range will cause all channels written after it to become misaligned and will create quite an interesting output image (similar to figure B.14 in the article). I.e. an R component will be written into G's place, G will be written into B's place etc..
It goes along these lines:
for (int i = 0; i < imgHeight; i++) {
for (int j = 0; j < imgWidth; j++) {
RGBTRIPLE triple;
fread(&triple, sizeof(RGBTRIPLE), 1, inptr);
if (triple.rgbtRed == 0xa4 && triple.rgbtGreen == 0x90 && triple.rgbtBlue < 0x77) {
fwrite(&triple, 4, 1, outptr); // an additional NULL is written to ouput
} else {
fwrite(&triple, 3, 1, outptr);
}
}
}Strongly recommend taking a photography class. Photography skill is a lot more important than the camera.
Bought a DLSR camera a while back and enrolled in a weekly photography class at a film school for a year. Now I barely touch this camera. It's pretty bulky and I can take equally nice shots using my smartphone camera (good enough for sharing with friends and for own memories).
The only times I would want to use a DLSR camera over my smartphone is when I intend to make a big print of the photo, so I care a lot more about the resolution.
I find it relatively easy to stick to doing productive things every single day if I do them the first thing in the morning, before I have breakfast. Later in the day things always get in a way and it is much harder to concentrate on non urgent things.
Perhaps we’ve all gotten a little hungry for meaning. Participation in organized religion is falling, especially among American millennials. In San Francisco, where I live, I’ve noticed that the concept of productivity has taken on an almost spiritual dimension. Techies here have internalized the idea — rooted in the Protestant work ethic — that work is not something you do to get what you want; the work itself is all.
This feels true...
I didn't know this for sure, but assumed that agents can see me typing for the sake of better response time.
I usually type my questions in a text editor first and then paste it into a service agent chat when I am sure that it is exactly what I want them to see.
This may be an interesting addition to some home assistant developed using https://www.home-assistant.io/
That is, use Google Home/Alexa/Apple Home for their speech recognition abilities while ensuring it doesn't eavesdrop and works with any other smart device that you have (e.g. there is no way to directly control Nest using Apple Home).
I heard this "energy boost" point many times and never understood it.
I tried waking up at 5 AM for a morning workout for a year (with proper 8-9 hour sleep at night) and I would always feel tired for the remainder of the day, especially for a few hours right after the workout. Maybe this depends on the type of a workout. I was doing mostly powerlifting with heavyish postworkout meals.
I am now working out a few hours before my bedtime and it is perfect. I get tired and physically can't stay up late after an evening workout; it really helps with keeping my schedule stable (i.e. not staying up late in front of a screen).
I guess it's also worth mentioning strongly connected components (SCCs) in this context (i.e. there is a directed path from any node to any other node in a component).
In the context of data analytics a SCC finding algo can be used to identify bottlenecks of communication/transportation networks and fault tolerance of distributed networks. In this case we are particularly interested in edges that connect SCCs. Another application is clustering. For instance, finding clusters of accounts that all follow each other on Twitter. In this case each such cluster is a SCC.
Kosaraju–Sharir algorithm is an easy to understand SCC algorithm with linear running time that basically consists of two BFS passes.
P.S. NetworkX (https://networkx.github.io/) is a great Python library for working with graphs. It has implementations of many common graph algos including SCC finding algorithm (it is an implementation of Tarjan's algorithm).
It's quite hard to find a merchant that accepts a cryptocurrency so unpopular, that a 51% attack on it is relatively cheap. And any exchange that really cares about the security of its funds has very long confirmation times for such cryptoassets and/or monitors those chains for any suspicious activity so that the withdrawals can be frozen if anything happens.
Not saying it's impossible to do a successful 51% attack, just that it's a lot less trivial than it might seem after checking out a site like https://www.crypto51.app/