1,907 karma · joined March 26, 2011
Pros: one click setup for devs jumping between projects after you get the devcontainer setup process working, takes some fiddling, trial and error.
Has felt good for some older projects to be wrapped in the devcontainer and once it’s working feel comfortable the environment is stable, and also moving everyone to new environments has been easy.
Keeping a haywire dev/npm script away from your main machine is also good, but I know it’s not foolproof.
Cons: Codespaces CPUs are usual cloud slow so you need to pay more and single threaded perf won’t be as good as your laptop, a real shame. I think GitHub competitors would have better CPUs.
Very rarely but Codespaces can have a technical issue and you can't do your work (inaccessible), and to avoid it sleeping during the day due to inactivity you may leave it running most of the day but it demands a shutdown after 12 hours or so, so very long dev sessions can be interrupted.
GitHub also dropped support for using JetBrains IDEs which was not cool, so it’s just vscode which is usable but would have preferred other IDEs.
If Codespaces team is reading would love to see some improvements here.
https://about.gitlab.com/blog/gitlab-discovers-widespread-np...
I’m curious if you’d also move into API testing too using the same discovery/attempt approach.
On the Data tab it says "no schema defined yet."
The Schema tab doesn’t seem to have a way to create a schema.
Most of the other tabs (except for Sources) looked blank.
I did see the chat on the right and the "51 items" counter at the top, but I couldn’t find any obvious way to view the results in a grid or table.
Check out https://chat.openai.com/share/34091576-036a-4e82-b4e3-a8798d...
AWS ALB (and others I'm sure) can balance by "Least outstanding requests" [1] which means a server with the least in-flight HTTP requests (not keep-alive network connections!) to an app server will be chosen.
If the balancer operates on the network level (eg NLB) and it maintains keep-alive connections to servers, the balancing won't be as even from a HTTP request perspective because a keep-alive connection may or may not be processing a request right now and so the request will be routed based on number of TCP connections to app servers, not current HTTP request activity to them.
[1] https://docs.aws.amazon.com/elasticloadbalancing/latest/appl...
A cron runs every 5 minutes that looks at your database for any objects you're indexing where last_modified_at timestamp > last_indexing_started_timestamp.
Index the objects into Elasticsearch, then update the last_indexing_started_timestamp value to be when you started the original sync process, so we catch any modified objects between the start/end of the update run, next run.
Then if Elasticsearch needs rebuilding you can just clear out the last indexing timestamp and resync from the start of time, and its self-recovering / won't get out of sync.
Would it help to replace Corrosion with a simpler "Here's my local known state" blob that is POST'd to blob storage (for example) on a major cloud provider, and have another service read that at intervals? Just to make it really simple.
There will be a better way than that, but my thought is if you can make it simpler (known state is always just pushed, so missing updates auto-recovers and avoids corruption) then you can be building on top of a more stable service discovery system.
Centralized secret storage, can you keep the US instance read/write, but replicate read-only copies (a side-car tool that copies the database to other regions at various intervals?) so each region can fetch secrets locally?
Or perhaps both can be solved with a general "Copy local state to other regions" service that is pretty simple but gives each region its own copy of other region's information (secrets, provisioning states, ...).
I've needed to do similar things for some of the apps I've built, where a service needed another (simpler) service in front of it to bear the traffic load but was operationally simple (deferred the smarts to the system it was using as the source of truth) and automatically recovered from failure due to its simplicity.
I manage small teams and it would be a requirement for us, and if pricing for a few users is $14/month, normally enterprise is higher than that and an annual commitment, but you wouldn’t be able to get much budget out of me at this moment due to team size, but there is some there.
When choosing tools like this, I pick ones I can grow with so I don’t need to solve it again in the future, so while the team may be small, it can’t adopt it if I cant start from that point.
My experience as a tech founder (software) reading your blog (thanks for sharing) and your Cloud feedback at https://forum.tinypilotkvm.com/-163/tinypilot-cloud-feedback is that you need to dig deeper into requirements and your user personas, and what combination of product and software adjustments reach an enterprise / professional market that are happy to pay recurring subscription amounts to you because they receive benefits and value.
Be careful you don’t set out to build and shape software entirely focused on users that don’t want to pay (because they have simpler requirements and free options) and you then don’t offer value to enterprises that needed different features because your talking to hobbyists instead of professionals with expensive problems they would pay to have solved.
You’ve got hobbyists that may not pay $30/month for a subscription, but to me they aren’t your target audience for a new revenue stream, what’s it look like if you focus your efforts in customising the hardware / cloud software to support enterprise scenarios? Can you be doing Zoom calls with a few of your users in the professional space about what problem they wish TinyPilot could be solving that they could be paying for?
Look at the feedback from Reeman and Larry in the above forum post, they’re asking for enterprise features that you’d be best positioned to solve and charge for (and a lot more than $30 per month), schedule calls with them and dig into their problems further, build for them, so they can order 100 devices and put them under cloud management for work, not the hobbyist that has no budget and wants different features.
These safety layers help present destructive operations more visibly before they are completed.
"An independent registered liquidator (the voluntary administrator) takes full control of the company. This allows the director or a third-party time to find a way, if possible, to save the company or its business." [1]
[1] https://asic.gov.au/regulatory-resources/insolvency/insolven...
1) Was there a keyboard shortcut for starting/stopping a timer and marking a task done? 2) Note the 'forgot password' link doesn't work from the subscribe popup 3) Storing the notes locally by reading from a .txt file that's synced to a personal drive would be great
Thanks!