dhkl
We first started evaluating time series databases a month or two ago, some features like continuous aggregation (rollups) were enterprise only. Perhaps their strategy is to drive adoption and letting people try their feature out, hoping that some of these adoptors will end up using their managed solution. I checked their pricing, and the delta between their pricing and the underlying AWS instance seems quite reasonable.
We ended up testing Influx first, because it seems to be a safe choice with wider adoption and extensive documentation.
With Influx, it was very easy to put together a prototype quickly. But once we started throwing some real workload at it, it would lose writes under load. But it makes sense that it failed, because according to Influx's documentation (https://docs.influxdata.com/influxdb/v1.8/guides/hardware_si...), we would need cluster to make it work. Influx is very transparent in their documentation that writes and queries will fail immediately when a server is unavailable without cluster.
This isn't to say that Influx wouldn't work for other use cases. But at least in our use case, their open source offering isn't suitable for us, and it's unclear how much better the cluster version is.
Timescale, on the other hand, was able to handle the same workload under stress. As we are unable to backfill some of the ingressing data, it's quite vital that the system can degrade more gracefully.
For my use case, one feature that still need some work in Timescale is their real time aggregation. It is currently impossible to define a rollup on top of another rollup, which means that if you are ingesting a lot of data into the raw table, and you down sample into a wide time bucket (e.g. a day, or week), queries against these wider buckets will potentially ended up having to query a lot of data points, slowing the system down considerably. Granted, it is a new feature that just got released about a month ago. Hopefully, with multi-node nearing completion, continuous aggregation will get a bit more love.
I spoke with their engineers about this over Slack, and their suggestion was to manually modify the rollup materialized view to aggregate over a combination of the materialized buckets (currently handled by the continuous aggregation) + real time aggregation from a higher resolution bucket.
We are still testing out Timescale, of course. But so far, it's been holding up its end of the bargain. The fact that Timescale is "just an extension" built for Postgres also makes it a less risky choice and offers a lot of flexibility; if Timescale doesn't work out, we could still work with Postgres, and that IMHO is a very nice thing.
Web Apps on a Pedestal
In non-declarative languages like Java, you have to build up the different pieces of computations, while you keep maintaining a mental picture of how the various pieces fit together.
In Prolog, you declare the entities and the relationships/constraints between them, and the system will build the solution for you through inference.
David Nolen has done some awesome work writing the core.logic[1] library, which makes those Prolog gooodies accessible to Clojure programmers.
Lisp Prolog and Evolution
When evaluating what tool to use for a project, there are many things to take into account other than the technical superiority of the tools. Relevance Inc, one of the strongest backer of Clojure, still make use of Rails for client projects. Rails' huge web dev ecosystem really made many common tasks as simple as importing a gem here and there and making a few method calls. It all comes down to the right tool for the right job. I'm interested in your take on how Rails' "share-nothing approach", awkward architectures etc.
> Clojure has all the power of Ruby's dynamism
Yes, and then some. Without repeating what you have already said, I would add efficient persistent data structure to the Clojure's list of awesome tricks. Doing functional programming in ruby and python, for example, will force you to trade value immutability with efficiency -- a penalty that one does not have to pay in Clojure.
Clojure is definitely gathering a lot of following. Like many others, I have picked it up, played with it, and never looked back.
But going back to what was said before. Yes, Clojure is awesome. No, Clojure is not obsoleting Ruby or Python any more than those obsoleted PHP, at least not now.
Care to qualify how Clojure obsoletes Ruby or Python? Both of those languages have great tools (rails, for example) that those in the Clojure communities have great respect for. As a Clojure and Ruby/Rails programmer, I share your enthusiasm for Clojure and lisp, but I can't see Clojure pushing either Ruby or Python out of the water any time soon.
Also, there is great support from lisp-friendly editors to handle parentheses management (e.g. paredit for emacs http://emacswiki.org/emacs/ParEdit).
<html ng-app>
can be turned into a valid attribute by making it <html data-ng-app>
I'm really glad to see how quickly the AngularJS team is addressing concerns like these. AngularJS is moving very fast, and there is a lot of room for improvements in documentation. But a quick check with the changelog would have showed that AngularJS supports the use of valid custom attributes for directives almost half a year ago."I didn’t care how much I ran, as long as I went out and did it."
I have seen many people starting a new exercise regime (among other things) by trying too hard and expecting quick results, and that leads to the inevitable burn out that most people experience soon enough. I've been there.
Whether it's learning a new programming language or getting fit, it's more important to keep at doing it each day than to focus only on beating yesterday's record.
Tomorrow, I'm going to put on my running shoes and go out to run. I don't care how much I can run, but I'm going to time myself for record keeping, and I'm just going to feel good that I did it :-)
The Hong Kong Telecommunity Authority is, therefore, not required to implement the GFW.
Even in China, there are some GFW-free spots. You might find some 5-star hotels giving you unrestricted access to the likes of Facebook, Google+ etc
Some notable communities to checkout:
http://codeaholics.hk/ - Technology agnostic programming community
http://www.startupshk.com/ - A tight-knit startup community
http://boot.hk/ - A great gathering place for hackers and builders.
See you in Hong Kong!
Couldn't agree more. I find it easier to design complicated algorithm/architecture at night than I do during the day, even when I'm fully reseted and without distraction.
Thank goodness that there is a strong traction behind HTML5 stack, and the industry as a whole is less reliant on Flash to deliver good UX.
Without Flash, the capability of these older browsers will be reduced, and I'm sure they will get abandoned at an even higher rate.
What I have found is that the IT guys in China compile many "recovery disk" with a pirated copy of Windows that people use to reinstall their OS. A lot of these disks are XP-based, but more people are running Window 7 now.
Lastly, several Chinese companies have developed their own version of browsers. I haven't really looked into what kind of rendering engine they run, but they appear to be some kind of rebranded IE. Does anyone have the scoop on this?
It's ironic when a piece of writing tries to present you with factual information begins with a deceiving title, all in the name of attention grabbing.