(coming from a country where having guns at home or seeing a civilian with a gun is very very strange and an huge emergency so maybe my question is stupid)
IF the government decides to use violence against you do you really have a chance with a gun? or 10?
I'm not claiming you'd be safe even with a gun. I'm not claiming there is any real government you are safe living under given a long timespan (maybe longer than even your own lifespan, but still these skills are passed down in families so breaking the chain during 'safe' times is still harmful).
To your specific question, probably not, but the better question is whether you have more of a chance with or without a gun? If you look at the Warsaw Ghetto Uprising for example, having a gun bought those people hours to days, which is better than nothing. Of course if you look at places like Chechnya, it bought them outright years that they were able to obtain independence from the brutality of Russia (even if not from their own brutality) as a result of militia activity in the first Chechen war.
Here are four small things to remember when working with Ruby:
1. Everything is an object and the main thinking is that you send messages to objects not call methods on objects. This is very important and the core of how the language works and moreso important when reading Ruby code.
2. `false` and `nil` are falsey. Everything else is truthy when used directly in conditionals. Eg: if variable will go on true-branch when variable is anything else than `false`/`nil`. Else it will go on the else-branch.
3. Start irb (the interactive console) and use <object>.inspect + <object>.class to see what is happening. Ruby has great introspection. Remember the first thing I said here (everything is an object) so you can inspect almost anything.
4. In Ruby paranthesis are optional. Eg: user.upgrade_to "admin" is actually user.upgrade_to("admin")
This sometimes happens also when the original leaders are still present but they dont understand the effect the metrics are having on the entire company when it grows big.
Have a senior leadership team and want them to not tell you bad news when you are the CEO/Leader? Then link their salary/performance to metrics like number of production incidents their team has. Suddenly the number of incidents that you know of decreases.
If that does not work to isolate you as the leader from thr reality of your company then link their salaries to a metric like number of projects finished before or at deadline and watch how tech debt increases multiple folds and how everything is suddenly estimates are increasing all over the place.
Want people not to ask meaningful hard questions in All Hands? Just make sure anyone that seems critical be labeled as not culture fit and done. All questions are positive and nice. Make sure to always ask for name and disable any anonymous questions asked.
Not trying to say metrics are bad or they should not be used. But they are not pure functions :) they do have side effects and sometimes very large ones.
I think Go is pretty much an OOP like programming language. While maybe it does not "look like" an OOP language it seems to me to allow a wide range of constructs and concepts from OOP.
I am not a Go programmer just reading about it, so I could be wrong.
2. Breadcrumbs are information that this action needs to set. You can set them in the views or in the controller via these helpers. But no matter where you put the data it is custom data that you as developer set and it is specific to this controller.
The information about how to navigate from homepage to this show method is something that either: you can use meta-programming to try to get it if you would for example scope controllers based on paths (not sure it is a good idea) or you have to provided as Rails cannot know if your controllers/views are in the top namespace.
> If you want to build a small, modest complexity web app with like 1 or 2 developers and under maybe 6 months of active development, modest traffic needs, etc, it's a good way to get everything up and running fast with best-practices for everything.
Of course lets silently ignore Github, Gitlab, Shopify and others: all small, modest complexity web apps built with Ruby on Rails. Look at Shopify last year black friday numbers and come back and tell us how Ruby is fit only for modest traffic.
I did say that those aspects of Ruby would start to be painful at that scale, not that it was totally unusable. Clearly it's usable, and there's certainly less scale-able things than Ruby on Rails out there serving big production traffic today. But I wouldn't recommend switching an app that big in some other language over to Ruby, and at least as many companies have moved off of Rails monoliths when they outgrew them, like AirBnB for example.
But would they still build with Ruby if they had to rewrite it today? It seems other commenters are saying they wouldn't. I wanted to see if it offered anything more than my python and Go preference.
For what it's worth, the last few years our we've sliced off a few custom client apps in Rails and it's felt like a great tailwind. We've been running a profitable BI app for around 15 years, but it's really hard to maintain. The dev team decided we want to rewrite it from .NET, Python, React into vanilla full-stack Rails. We were planning to rewrite it anyway to fix many old assumptions that turned out to be wrong and made maintenance a lot harder. It should also reduce the required coordination of backend API + frontend being that it's more cohesively developed together. But ultimately, we've enjoyed using an opinionated framework that has all the typical "web app" things batteries included and well-established. It helps discovery.
I think it works well for SaaS type offerings where you have a low number of high-value clients. We don't do high-traffic public sites. Perhaps my opinion would be different then.
I don't know. Do programming languages really make that big of a difference, other than with developer unhappiness and talent scarcity when hiring?
I think how many quality devs you can hire with that language is really the only question that matters 90% of the time (ballparking), so long as the language is designed for that use case, like don't use assembly to write a production webapp.
I don't know many devs that code with Ruby, I know of more devs that code in rust and Go which are newer by at least a decade? so the question of what actual benefits it has is important.
For Go, it makes it hard to mess up error handling and easy to deploy your apps since it's all a static blob, but memory footprint and optimization can be challenging at times. For rust, it takes a long time to do things, so fast shipping timelines might not be a good fit. For Ruby, does it have anything that makes it more secure, faster to code with,resilient to failure, easier to scale,etc...? I don't think anyone answered that here.
What can it do _better_ that the other languages you listed can't or can't as well?
Honestly, if you're even slightly concerned about Go's memory footprint and optimization then you shouldn't bother digging any further into Ruby.
There's a reason that the DevOps world abandoned Ruby wholesale in the late 2010s (mostly replacing it with Go).
In a world where container orchestration allowed servers to be more fully utilised, it became increasingly obvious that the ancillary tooling (think log shipping or metrics collection) often had a larger memory and CPU footprint than the core service itself.
Formerly popular tools in this class like Sensu or fluentd have either been rewritten or replaced with Go equivalents, and Ruby seems to be more or less dead for new projects outside of the Rails niche.
If you go down in physics you might discover that the reality seems to be composed a lot more by probabilities. An objective reality built on probabilities does not seem so objective afterall.
Here is a fun think to try: demonstrate that you and me are seeing the same color in the same way? You might find some papers trying to prove it but you will se they are all based on subjective answers of people.
So while at macro level the reality seems hard and objective at the micro level it is not.
It's an objective reality. Even at quantum level the known laws of nature hold. Even if there is uncertainty, nature is predictable in following the laws of physics.
And ofc at macro level we live in a very objective reality. This is the basis of science.
Some of these extra tools are added because someone wants to display "a blog post" using React and so they think they need all those extra tools for FE.
If there is no need for the level of reactivity that is on the level of facebook style then everything provided by a simple rails new is enough.
But I would say that you kinda need to think about the UX with simplicity in mind or else everything becomes a blog with React because everything can be forced to look like it needs to be reactive and do a lot of unnecessary stuff.
> Just because the company uses AI doesn't make it an "AI startup."
I think you need to expand a bit more this. I does sound to me that if you are using AI in the main product you are an AI startup.
It is similar with if you are offering a web version of your app you are an internet company. And if you are offering a mobile version you are a mobile company.
and a company can be more than one: An internet AI mobile company :)
IF the government decides to use violence against you do you really have a chance with a gun? or 10?
reply