Early in my career, I wrote sales funnel optimization algorithms for online-shops and travel websites. We've used an evolutionary algorithm approach - basically, a number of algos implementing competing strategies and aspects that could mutate, crossover, reproduce and die.
We ran this over two years and saw impressive results - especially for the time. I feel, this very much was a "thinking system" in the same sense. And I concur - there are many architectures and approaches to built this sort of thing.
Yeah - I've been toying with a similar approach in my banking days. Basically, we've used "Genetic Programming" (very pompous term) to optimize order routing to minimize slippage (the difference between the expected price of a trade and the actual executed price).
Basically, you create a "population" out of possible placement strategies for orders. You then cycle through "generations" that quickly adapt to the changing market conditions.
Ultimately, you end up with something that - on average - provides execution closer to the target price than traditional, more static strategies. But the problem for us was that the outliers where really far out. Basically, if it got it wrong, it got it really wrong and you were often stuck with a set of half executed orders that had to be cleaned up manually.
It seems the value of this type of approach is not the "thinking" (i.e., contextual understanding) but rather the computational speed of assessing random trials. Compared to evolutionary timescales, it's very, very fast but I wouldn't characterize "thinking" to the randomness of evolution, despite its success.
- uses the information it already has combined with new inputs to form new information based on both (aka reasoning)
- retains learned information over time (aka memory)
- contains feedback loops to eventually eradicate "wrong" information (aka learning)
- converges to similar conclusions in similar circumstances (aka reasoning or possibly instict)
At least several of the most important parts of thought are there, though it is obviously very different than our own mind. That's OK, both submarines and penguins can move underwater but they do it in very different ways. No reason to think that thought wouldn't have multiple ways in which it could be implemented.
Evolution is also almost certainly not self-aware but neither is a dog and we consider dogs to be capable of thinking too.
I agree, and I didn't mean to imply it's not useful. But I do think it's different and important to understand the limitations regarding those differences. In one important aspect, contextual understanding allows for better decisions in novel environments. The "random trial and error" approach has much less additional benefit in that regard.
I think that in a few decades after we've had a lot more experience with various NN-based AIs, someone will come up with a more general quantification of "intelligence" that can integrate all these approaches into some vaguely orderable classes. After all a genetic algorithm seems clearly smarter (in some ways) than a rock but also it's clearly not as smart (in some way) as a dog. In that sense you could also say a physical lock is smarter than a rock (in that it processes a little bit of information) but not as smart as a human because it cannot learn.
Similar to how we have things like NP-hard > NP > (maybe) P, you could have a classification based on how many (types of) information can be processed or something like that. Maybe a similar but separate scale for learning capacity?
I think there's a meaningful difference between adaptive systems and thinking systems. I would say that the latter have to build internal models of the system they're analyzing and adapting to in order to qualify as "thinking".
Evolution by natural selection is adaptive in the sense you describe, but no one would consider to be "thinking".
In the times of GDPR and CCPA, there is no excuse for not having a simple way to delete your data. You should be able to revoke consent and remove your data as easily as you provided consent.
I've switched to https://deepstream.io for my projects. It's just the realtime aspect of meteor, but in an entirely different league when it comes to performance
Looking at troika's submissions, there's one "Show HN" about Deepstream so yeah, definitely involved in the project. Don't understand why one would say "I've switched to" for an application they've created or contributed to, especially if there's proof in your history that you have marbles in the game.
Great update, congratulations. It sounds similar to https://deepstream.io records - small JSON documents that are stored and synced in realtime across clients and can be arranged in lists and reference each other.
You could cut down costs or at least improve cost-predictability by hosting something like https://deepstream.io/ instead of Firebase. The problem however is that you are still exposed to your cloud provider's fees - if AWS or Google Cloud up their band-with cost, you're in the same boat. Than again, the independence gained by running a server in a basement comes with a very hefty penalty.
We are looking for a skilled and motivated Junior Fullstack Developer to work on both the deepstream.io open source server and our upcoming realtime data platform deepstreamHub.com (on-site/fulltime in Berlin).
Very true. I guess there's also the angle of alleviating third party risks if you're running a PaaS/IaaS offering. By open sourcing your core you give clients something to fall back upon if your company gets bought/goes bust etc. This might result in a competitive advantage over proprietary only competitors.
> By open sourcing your core you give clients something to fall back upon if your company gets bought/goes bust etc. This might result in a competitive advantage over proprietary only competitors.
I work on a proprietary product (SaaS + on-prem models), but this is also a very strong consideration for us in choosing basically anything we use (whether part of the product or part of our infrastructure).
If you're a small shop and not open source, unless you're literally the only option (or you're trivially replaced by a dozen other products), you're basically ruled out, unfortunately. This includes SaaS stuff.
It's not that we don't have the money, it's we don't have the risk tolerance. If you disappear, or get purchased and stop offering your product, or decide not to fix our bugs because they're too niche to us, I don't want to be hung out to dry.
" it's we don't have the risk tolerance. If you disappear, or get purchased and stop offering your product, or decide not to fix our bugs because they're too niche to us, I don't want to be hung out to dry."
Lots of examples. Convergent's CTOS, OpenVMS temporarily, QNX's "open" source, most desktop OS's, many commercial compilers, and recently FoundationDB I had hopes for. I simply don't use something commercial unless I can export the data out of it easily to an OSS alternative that I have ready-to-go. Also need to regularly export and test that data as the closures or licensing changes sometimes happen without warning.
We ran this over two years and saw impressive results - especially for the time. I feel, this very much was a "thinking system" in the same sense. And I concur - there are many architectures and approaches to built this sort of thing.