czei002
|
8 months ago
|
on: Code-GUI bidirectional editing via LSP
cool! how does this work? e.g. how do you know which UI element matches which text element, do you track it while rendering? How do you propagate changes in the UI? do you update the text and then re-render the whole UI?
czei002
|
1 year ago
|
on: LSP: The good, the bad, and the ugly
czei002
|
2 years ago
|
on: VeraCrypt: Free open-source disk encryption for Windows, Mac OS X, Linux
Does Cryptomator also works over sftp? Does it supports concurrent edits to the same vault? Can't find much about it in the docs...
czei002
|
2 years ago
|
on: Glove80 Ergonomic Keyboard
Got excited about the function keys but unfortunately the Glove80 isn't a replacement for my Kinesis Advantage. I really dislike a battery powered keyboard, plugging in a cable into my laptop in the morning is something that never bothered me. However, having a failing keyboard/mouse in the middle of some work really annoys me.
Maybe I am wrong but aren't two movable parts a bit annoying as well? My keyboard gets moved on my desk quite a bit and repositioning two moving parts sounds quite tedious...
czei002
|
3 years ago
|
on: Review of the Kinesis Advantage360 Professional
I type a lot but not that much typing that pads per finger would be an issue for me. I use f keys for changing desktops (ctrl + Fx) and I use the media keys to change volume. The later I use infrequently and not having a symbol on a key wouldn't work for me, I wouldn't remember where it is...
You can still use layers even though there is an extra row of keys so not sure why to remove keys other people rely on.
czei002
|
3 years ago
|
on: Review of the Kinesis Advantage360 Professional
Agree! main points I don't like about the 360 are the missing F-keys and wireless, i.e. the need to charge it constantly. In this line, a use hub would be nice to connect a mouse like it is possible for the old Advantage..
czei002
|
3 years ago
|
on: How “let it fail” leads to simpler code
Other frameworks like express (nodejs) or actix (Rust) also don't crash if you "throw" in an request handler so this doesn't sounds very exciting to me. The interesting question for me is how retries are handled after an error occurred? For example, if the error happens in an http request handler, does the request still fails with 500 or is it magically retried by Erlang while keeping the request hanging? For internal service calls how are retries working? i.e. how can I configure that a request is retried after a failure? I guess Erlang does this and this is the power behind it?
The example of a missing file seems not very good since its a problem that is probably not solved by waiting. A better example is probably a busy DB that is temporary not reachable?
czei002
|
3 years ago
|
on: Rust 1.63: Scoped Threads
What happens if you borrow a more complex mutable object to a thread and this thread is killed somehow leaving the borrowed object in a corrupt state, e.g because the thread was killed while doing an unsafe operation on the borrowed object. Can't I catch_unwind the scope call and then access the corrupted object?
czei002
|
3 years ago
|
on: Maud: A Rust macro for writing HTML
czei002
|
3 years ago
|
on: Maybe Passwords Are the Future
Given all the drawbacks of passwords there isn't really an alternative to passwords for me. For example, what do you do if you only have 2-factor auth and you lose access to all your devices/docs? e.g. when you are on holidays?
PAKE supports in the browser would be awesome. Some applications for it:
https://www.researchgate.net/publication/325142389_AuthStore...
(swap the proposed PAKE for OPAQUE)
czei002
|
5 years ago
|
on: Hyperdrive v10 – a peer-to-peer filesystem
Sharing an append only log can be quite treacherous for users that are unaware of it. For example, when accidentally including some confidential stuff. A not so security aware person may think a quick delete fixes it and depending on the situation this might event be true, but its still in the log... Not familiar with Hyperdrive so please somebody correct me if I am wrong and this case is handled.
czei002
|
5 years ago
|
on: Porting a React Front End to TypeScript
Thanks for sharing! We actually tried the same approach but we have a couple of more micro services relying on the same shared code. This has some additional complications, e.g. managing all dependencies for all services in one package.json is a bit messy and preparing a pkg for deployment gets a bit more complicated...
czei002
|
5 years ago
|
on: Porting a React Front End to TypeScript
Regarding the previous backend related article and code sharing between backend and frontend, how does your project setup look like?
For example, does the code get compiled using a bundler like webpack? if yes how do you solve the import '../../../../../shared.ts' problem? Or do you use node modules in a monorepo? Compared to other languages I found these questions surprisingly difficult to answer and solutions often quite cumbersome, e.g. if I want to share one small file in my project I don't want to maintain a public npm module for it...
czei002
|
6 years ago
|
on: Neo.mjs – Webworker-driven UI framework
I think I hit the dom tree update limit on my machine. Reducing the number of items to 100 makes it work all right (using the mouse wheel, slider still not working good) but its also not really impressive.
Maybe have a look at old multithreaded BeOS demos and consider to implement something like that. For example, do some heavy work in some workers while the UI thread renders the ongoing results in a smooth animation and let users dynamically change the number workers (BeOS had a demo which allowed user to switch cpus on/off during rendering with fully responsive UI).
czei002
|
6 years ago
|
on: Neo.mjs – Webworker-driven UI framework
It sounds like a very good idea! However, on Linux in Firefox as well as in Chrome the UI (helix) doesn't seem to be very responsive, i.e. the slider is jittering making it feel very sluggish. Is that a bug? However, I see multiple cores being utilized. Same on mobile...
I don't really buy the template argument. Think declarative layouts such as QML, React, etc. are there for a reason...
Why focus that much on mjs? Wouldn't you use Typescript anyway? i.e. you still have source map (beside I never had problems with source maps)
czei002
|
7 years ago
|
on: Telegram gets 3M new signups during Facebook apps’ outage
Unfortunately Telegram nor Signal supports federation. I find it bit funny that people move from one wallet garden to the next one 8-)
A good alternative is Riot. The recent Riot update actually makes it a pretty decent messenger!
czei002
|
7 years ago
|
on: Marble Marcher: ray-traced real time game on the surface of evolving fractals
czei002
|
7 years ago
|
on: Richard Stallman: We Can Do Better Than Bitcoin
Cash is still my payment method of choice. No tracking, etc... GNUTaler is the only digital currency that I know that could replace cash!
czei002
|
7 years ago
|
on: Private by Design: How We Built Firefox Sync
czei002
|
7 years ago
|
on: Why [Insert Thing Here] Is Not a Password Killer
If done right, passwords are a very powerful and universal auth method, i.e. all credentials can be remembered and no third party or auth device are needed (e.g. you are still able to login even when you lost all your belongings while traveling). However, there are problems when reusing passwords and passwords are usually leaked to the remote party when authenticating, e.g. its trivial for a web service to learn what password or password pattern you are using. I am working on an open source project called FejoaAuth where we are working on a secure authentication solution that does not leak the password during login. This allows to reuse a password, e.g. to use a password for authentication and for data encryption. This makes true one
password solutions possible. Its an open source project so please get in contact :)
https://fejoa.org/fejoapage/auth.html