Crystal vs TypeScript
Created simple plotting API for Vega Lite in TypeScript
plot()
.mark('line')
.x({ field: 'date', type: 'temporal' })
.y('price')
.color('stock_symbol')
.data(price_data)
.inspect()
and Crystal
Created simple plotting API for Vega Lite in TypeScript
plot()
.mark('line')
.x({ field: 'date', type: 'temporal' })
.y('price')
.color('stock_symbol')
.data(price_data)
.inspect()
and Crystal
Daily meditations, 5-30min, 1-3 times a day, clears mind, calms down and lowers the blood pressure.
Lunch sleep, 30m-1.5h, once a day, clears mind, calms down and lowers the blood pressure.
Food diet, paleo diet. No trans-fats, high-GI carbs, little- Omega-6. Proteins (fish, meat), fats, Omega-3. Intermittent fasting, try to keep 18h pause and eat only twice a day.
Informational diet. Avoid watching TV, shows, youtube, reading news, social sites or have conversation online. Consume views of beautiful nature, travel and ocean, EVERY DAY. Have conversations with great mind (via books) like Thorp, Taleb, Mandelbrot. Also add hobbies driving, rock climbing, etc.
Ego diet. Don't feed your ego by seeking directly or indirectly recognition or approval of others.
Physical activity 10-20k steps every day. Strength training 2-3 times a week.
Live in a beautiful place with beautiful mountain view and nice walking areas.
Learn and invest only in Lindy skills and knowledge.
Also known as GAN or DCGAN (Deep Convolutional GAN).
Short explanation of GAN, by Yan LeCunn pdf.
Detailed article about Generative Models / GAN by OpenAI, pdf.
With Genetic Algorithms and Neural Nets
I had couple of ML-related courses at University and used it in practice, but, still it was very interesting to review and refresh the core concepts.
Especially from such a badass ML expert as Andrew Ng, with lots of practical examples and advices.
My Notes and the Course by Andrew Ng.
An interesting exercise that tries to reduce risk of the failure and identify problems early.
The Project Team has been asked to answer couple of questions about the state of the Project. To make it more fair the Team has been split in two groups and each of groups has been asked independently, without knowing the answers of other group.
The result was quite unexpected, the answers where different for almost half of the questions. You can see it on the picture, same questions answered with different colors.
My christmas present, should be enough for couple of months.
Below are list of most usefull food supplements that have proven benefits (I'll add links to exams and proofs later).
Glucosamine Chondroitin MSM - joints support.
Liver detox - herbs extracts for better digestion.
Grape seeds - immune support, antioxidants.
Coenzyme Q10 - cardiovascular system.
Had business trip to Europe for 2 weeks, visited Barcelona, Berlin and Amsterdam.
I'd like share an approach we use at Qubell to ensure quality of our product. A set of practices that allows us to use Acceptance Testing in simple and efficient manner.
Note: this article is my personal opinion and can't be associated with Qubell's official view on the matter in any way.
Let's try to express the test case with plain english first. A little about the product itself
On the screenshot below you can see list of sample applications.
So, as I told in the previous article - the basic version of the Crawler worked well and proved to be usable. The problem - it was slow and unstable.
To make it fast we need to run it on multiple machines (about 5 - 20). And to make it stable we need to figure out how to make reliable system from unreliable components.
The unreliable component - Crawler uses Browser Emulator (Selenium) with enabled JavaScript to properly render content of sites. And it consumes lots of resources and frequently crash and hangs (it is not very stable by itself and what's worse - there maybe invalid HTML or JS on different sites that can crush or hang it).
Multiple machines instead of just one make things a bit complex because couple issues arise:
Recently finished project - Web Crawler for JavaScript sites. It crawl eCommerce sites and collects information about the products. You can see parsed products for one of such eCommerce sites below.
Usually crawlers browse site pages, collect HTML from it, parse and extract some data.
But, in our case we can't use such approach - because sites we are interested in aren't usual sites. There are no any useful data in HTML sent by server, because they rendered using JavaScript in the Browser. And to parse such sites you need full Browser with working JavaScript Engine.
Best feature of MongoDB is not it's performance but simple and flexible data model. So, let's say you build prototype - you concentrate on the big picture - the product itself and ignore little things like performance and db indexes.
Later you deploy your product into the wild users came and it starting to get slow. You need to add indexes, to do so you need to know data usage patterns. Doing it manually by searching codebase is boring and not very productive. Thankfully MongoDB has Profiler - all you need is to enable it and it will give you all details about slow queries and what indexes you need to add.
I like this approach very much, because it fits iterative & lean development very well - you always concentrate on the most important things at the moment. At the first step most important thing is to experiment with the product and features without being distracted by performance issues. And flexible data model of MongoDB comes very handy to that. Later you deploy product into production and can use its Profiler to zoom to more fine grained performance details.
I wanted to see benchmark that more or less close to real life, not just measuring how fast it can stream data via http.
So I created application that query some text from remote HTTP service (service delays each request for 200ms) and render HTML page using that text.
It simulates how Web Framework performs when it needs to wait for response from DB or other services, how fast its templating engine is and also how fast it is itself.
And hit it with wrk -t2 -c100 -d10s http://localhost:3000
you can see results
on the picture.
3782 vs. 2914 hits, average response time is also very close.
Created simple Cart Widget http://salejs.com that can be included into any HTML page and turn it into Shop.
There's also tutorial and screencast explaining development step by step http://jslang.info/projects/salejs