Computer Science. After transitioning from Mechanical Engineer, and 5 years of being a "Software Engineer", I want to understand more how computers, operating systems, network, etc. work
From personal experience, I wouldn't try making anything complicated with Retool.
The saying "it makes hard things easy, and easy things impossible" is fitting, once it feels like you're fighting against the platform, it's time to quit and start writing some code.
The thing I like about Retool is that it's pretty easy to just drop to code within Retool itself, provided you're willing to write JavaScript. You can write JS "queries" that just run a piece of code, and you can create completely custom React UI components. You can also write JS for things like conditional formatting of table rows, generating and exporting a CSV file the user can download, transforming API responses, and so on. And you can still take advantage of Retool's automatic coaching and reloading to some extent. In my last job I built a number of fairly complex dashboards with Retool alongside my normal work, including one with an interactive network graph.
Similar reaction, I searched for "lambda calculus" first thing first and was pretty weirded by the "0 results".
To me (someone who really doesn't like FP as a religion), FP is about function application: everything should just be "pure" function calls taking values (not references) and returning values; immutability is indeed a corollary of that, static typing really isn't (isn't Church's original LC untyped, btw?).
It's not enough to take out the 'bad bits' - you have to put in 'good bits' too.
For example, Java collections are mutable, but enough ink has been spilled about the dangers of shared mutable state, that there are various recommended defences, e.g. make defensive copies when you return collections to a caller. Or use one of the immutable collections that will throw a runtime exception if someone tries to mutate it.
Now consider if you wanted to evaluate 3 + 5. Should you throw an exception which tells the caller off for trying to change the value of 3? No, the caller just wanted 8!
This is what's missing with the 'just make things immutable' approach to FP mimicry. I want to be able to combine collections together. The Java standard library Set<> still doesn't have union and intersection for christ's sake.
Perhaps not these days, back in pre-C++11 days it was very liberally used. And something I miss in other languages, precisely because it allowed for much easier reasoning.
i mean, then we get into defining multi-paradigm :P
does it have objects that could, theoretically, be used in a java-like object oriented system? yes!
does anybody do that? not really!
it's far more functional than any other paradigm, and that's what counts.
Not sure how you arrive at that conclusion? This Brazilian judge has banned X in Brazil, barred Brazilians from accessing X using a VPN (with a $9k fine for violation), frozen the bank accounts of X's legal representative and threatened her with arrest. All without any discernible due process.
The VPN part hasn't. I'm pretty sure that mods are hiding the VPN-ban news from /r/news and /r/worldnews, because it would damage the ongoing anti-Musk two-minute hates.
The biggest violation is of the freedom of expressions rights, which are in Article 5 Section 9:
> [introduction] Everyone is equal before the law, with no distinction whatsoever, guaranteeing to Brazilians and foreigners residing in the Country the inviolability of the rights to life, liberty, equality, security and property, on the following terms:
> expression of intellectual, artistic, scientific, and communication activity is free, independent of any censorship or license
Posting on Twitter is a communication activity and it is therefore permitted without any censorship, explicitly.
Look at Section 37:
> there shall be no exceptional courts or tribunals
In this case, the exceptional court is what Moraes implemented in 2022, basically as a secret court of one. He served on the Supreme Court but also as president of the electoral court. The proposal to give him unilateral censorship powers was proposed by him and approved by the electoral court, with the power being granted to him in the other court. It is a very convoluted legal maneuver to basically give himself powers that no executive or legislative authority gave him. Note that no laws are passed to perform this maneuver. And by issuing these orders in secret, as a Supreme Court justice, it makes the path to appeal difficult or impossible.
It was shortly after this move that the New York Times (and many others) called Moraes a threat to democracy:
> no one shall be deprived of liberty or property without due process of law
This one is obvious - a single judge issuing censorship orders with gag orders to prevent public visibility or challenge is a serious violation of due process.
Or section 57:
> no one shall be considered guilty until his criminal conviction has become final and non-appealable
The reason I mentioned this section is some are saying that the censorship orders will eventually be reviewed by the full court bench (rather than being issued in secret by one justice), and that the orders are valid until then. But that’s equivalent to considering someone guilty without criminal conviction.
There’s more than just these, if you look through the rest of it carefully. X’s official AlexandreFiles account (https://x.com/AlexandreFiles) is also posting the secret censorship orders they received along with side by side comparisons against Brazilian law.
Sticking to principles is "winning" for some people, not making more money or getting power. Zuckerberg would've folded long ago and did whatever the govt asked him to do in order to make more money.
Doesn‘t even have to be about money. Would be perfectly rational to comply to minimize uncertainty, public outcry, getting into the cross-hair of other countries‘ regulators and distractions from operating the core product/service. In short: for most people it wouldn‘t be worth the headache to stand up against a state like this.
I find the reaction to be appropriate, a large amount of people can't play the game anymore. What else would you expect? "I paid a considerable amount of money for the game and now I can't play it anymore, but the graphics were very nice on the small amount of time I played, 5 stars"?
Interesting idea. Some feedback
- The UI doesn't look very good everywhere (text on the landing page has low contrast, awkward elements placement in the tool)
- Why are you restricting the product only for education? From your demo it seems like it could be used for anything? E.g finding animations, certain video styles
Your real product seems to be a semantic search for Youtube
- You should return a list of videos, instead of a single one. Allow people to choose the one they like most
Otherwise, cool project, it's also not something I would pay for, but maybe some people would
Hey, thank you for the feedback.
For the UI part I think I have exagered by always thinking this a MVP so I shoudln't waste too many time on UI details or some stuff ( maybe working with UI library will be the solution ).
The restriction for the education is just because of the fact that the main idea of the app is to help people finding educationnal content on YouTube and avoid buying online course when you can find it on YouTube so the target is the person who want to learn something online.
https://github.com/leoffx/fizz