This is a better article on the topic explaining that the ABA's requirements for different forms of diversity oppose the administration's ban on DEI. It also points out that this could lower the cost of law school by reducing superfluous requirements for law school accreditation.
My longest employment stint was at such a company and it was a very good experience for me. That said, even though I worked at such a company for a while, I don't have a very good idea how I would go about identifying other such companies with open roles. Any suggestions on how to do that?
Organizations such as the ACLU and the American Red Cross are registered organizations and I doubt you'd advocate for restricting or redefining their civil rights. Perhaps you'd draw the line at for-profit organizations, but that doesn't make it better. Should Ben & Jerry's or Patagonia or other corporations with notable positions on social issues not enjoy the protection of civil rights from those who oppose them?
The bottom line is that any restriction or redefinition of civil rights is fraught with negative unintended consequences. It should be an option chosen with extreme care.
There are certainly legitimate concerns about the influence of Amazon and other large corporations, but the solution is not so simple as what you suggest. Corporations are associations of people, so you are advocating for civil rights for individuals up until they associate with others and act or speak collectively. That would be radically detrimental to the meaning of civil rights.
This. I finally switched from using various APC models to an Eaton 5S 1500 unit for my desktop and a couple peripherals and it's much better while still being comparably priced.
I would say that infrequently used tools are an especially good choice for battery-powered cordless tools when the alternative is typically a tool powered by a gas small engine. For example, I need a chainsaw for infrequent jobs, but every time I ran it, I'd have to fiddle with the carb and the spark plugs, throw out old gas, make a new gas/oil mix, etc., so it was a major pain and I'd use it only if I really, really needed it. I replaced it with a 36v Makita chainsaw and it's a breeze to use every time.
This is most definitely true, but I think it highlights the mistaken idea that individual healthcare is a commodity. I think we all recognize that an excellent home builder, auto mechanic, attorney, software developer, etc., can have an outsized impact on the outcome of potentially severe or expensive situation but we often put less effort into finding a healthcare provider for a particular malady. I've had some severe negative outcomes from questionably competent, focused-on-billing doctors where I would have been better off not seeing a doctor at all than seeing them. Unfortunately, there's no reliable way to separate the truly skilled doctors from the ones who barely passed their boards.
Their X Compact line of phones was great with high-end SoCs and incredible battery life but unfortunately, they haven't released any new phones in that line for several years so they're pretty dated now.
Taking this approach to using a database is always a judgement call, but putting logic in the database is probably useful a lot more often than the "nine times out of ten" that the article claims. And the tradeoff in this approach contradicts the last line in the article: "Utilize the full extent of your database’s capabilities, but don’t put domain logic in it." Putting logic in your database is often necessary to make full use of its capabilities.
In applications with complex storage needs and/or performance-sensitive IO needs, I prefer to think about databases as an additional tier that provides complex storage services (as is precisely the case with most modern databases). As an example, I once worked on message routing and transformation server. From the perspective of the application logic, messages simply needed to be durably persisted and retrieved. At the level of the storage layer, I wanted message versioning, provenance, copy-on-write semantics to minimize on-disk size, and indexes to support at least two different retrieval patterns. All of the items at the storage layer were implemented in stored procedures. In other words, the database supplied a custom "storage API" to the business logic tier for persisting and retrieving messages that implemented those routines in a database-specific way that did not concern developers at the application layer.
The main arguments against this approach are:
* It will tie you to a specific database. This is true, but almost irrelevant since anything other than the most trivial usage of a database will inevitably make use of a feature or syntax specific to the database that would require modification were one to migrate to another database. Further, the mere idea of database independence is kinda' silly. No one talks about how writing your application layer in one particular programming language will limit the ability to migrate to another programming language. We should make technology choices around programming languages, databases, etc. with the intention of matching their strengths to the problem at hand fully understanding that tradeoffs are being made and that rework will be necessary if those choices are ever revisited.
* SQL used for writing stored procedures is not as good (for some definition of "good") as other programming languages used in the application layer. SQL is certainly different than most imperative or functional programming languages, but it's expressive and well-suited for its purpose. If you really need to make use of the capabilities of a database, it would behoove you to develop some proficiency in SQL.
* Putting logic in the database breaks modern CI/CD processes. IMO, this is the most compelling argument against it. That said, there is tooling that exists for putting stored procedure and other database logic in version control, automatically deploying it to a database, and running tests on it. These tools are not as commonly used, but they do exist. I've also used tooling that introspected the database objects such as stored procedures, etc., and automatically generated type-safe application code to interact with those database objects. That provided compile-time guarantees that application and database code were in sync at least with respect to number and types of arguments, etc. Whether it makes sense to go to the effort of integrating this tooling into your development process is a judgement call, but it can be done and I've seen it work well for application with demanding database needs.
I've operated MySQL in production at different scales ranging up to _very_ large and as such, I place a lot of emphasis on how well that can be done. I posted some of this a couple years ago, but I would describe the production operation of MySQL as a minefield. I maintained a list of the mines I stepped on and here are the two I encountered with the biggest blast radius:
* If you have pre-5.6.4 date/time columns in your table and perform any kind of ALTER TABLE statement on that table (even one that doesn't involve the date/time columns), it will TAKE A TABLE LOCK AND REWRITE YOUR ENTIRE TABLE to upgrade to the new date/time types. In other words, your carefully-crafted online DDL statement will become fully offline and blocking for the entirety of the operation. To add insult to injury, the full table upgrade was UNAVOIDABLE until 5.6.24 when an option (still defaulted to off!) was added to decline the automatic upgrade of date/time columns. If you couldn't upgrade to 5.6.24, you had two choices with any table with pre-5.6.4 types: make no DDL changes of any kind to it or accept downtime while the full table rewrite was performed. To be as fair as possible, this is documented in the MySQL docs, but it is mind-blowing to me that any database team would release this behavior into production. In other words, in what world is the upgrade of date/time types to add a bit more fractional precision so important that all online DDL operations on that table will be silently, automatically, and unavoidably converted to offline operations in order to perform the upgrade? To me, this is indicative of the same mindset that released MySQL for so many years with the unsafe and silent downgrading of data as the default mode of operation.
* Dropping a table takes a global lock that prevents the execution of ANY QUERY until the underlying files for the table are removed from the filesystem. Under many circumstances, this would go unnoticed, but I experienced a 7-minute production outage when I dropped a 700GB table that was no longer used. Apparently, this delay is due to the time it takes the underlying Linux filesystems to delete the large table file. This was an RDS instance, so I had no visibility into the filesystem used and it was probably exacerbated by the EBS backing for the RDS instance, but still, what database takes out a GLOBAL LOCK TO DROP A TABLE? After the incident, I googled for and found this description of the problem (https://www.percona.com/blog/2009/06/16/slow-drop-table/) which isn't well-documented. It's almost as if you have to anticipate every possible way in which MySQL could screw you and then google for it if you want to avoid production downtime.
There are others, too, but to this day, those two still raise my blood pressure when I think about them. In addition to MySQL, I've pushed SQL Server and PostgreSQL pretty hard in production environments and never encountered gotchas like that. Unlike MySQL, those teams appear to understand the priorities of people who run production databases and they make it very clear when there are big and potentially disrupting changes and they don't make those changes obligatory, automatic, and silent as MySQL did. IMO, MySQL has its place for very specific workloads, but if you don't have deep enough knowledge of DB engines and your workload to know that yours is one of those specific workloads, you should default to PostgreSQL.
It's certainly an accomplishment to achieve a highly productive per capita economy, but I don't think it's quite the slight on the US when the four countries with higher productivity per capita range in size from 0.3% to 2.8% of US GDP. Achieving productivity per capita at scale is hard.
I've experienced a very similar effect. The health ROI on your time investment with strength-focused training is pretty incredible. If you could bottle it up and sell it, you'd be rich!
This article is focused on growth in muscle _size_ over growth in muscle _strength_. The two are related, but it's pretty well-established that you can bias your training towards one or the other. You can see the difference between experienced powerlifters and bodybuilders. PLs move heavier weights than BBs, but the latter generally have more muscle mass. I think training for strength has more everyday health benefits than bodybuilding and its training methodology (train large muscle groups with high weight and lower reps ~2x/week) at the novice and intermediate level is much less time-consuming.
In the theme of the OP and by way of response, I've been lifting weights for decades but only in the last couple years realized that gloves were detrimental to lifting. They add a layer of material around the bar that increases its circumference and thereby increases the effort required to grip it for pulling movements. They reduce your tactile connection to the bar which is important for engaging secondary muscles in certain lifts (e.g., lats in the overhead press) as you progress in strength and for very technical lifts such as the clean. The only time hand protection may be beneficial is for movements in which your hand rotates relative to a bar. That is never the case for a (properly performed) barbell exercise but may be the case in certain gymnastic movements on a pullup bar and in that case, you might consider gymnastics grips.
Yep, this prompted me to uninstall the snap version of Firefox that was installed by default in Ubuntu 22.04 and reinstall it from the Standard Ubuntu repository. Score minus one for snap.
You're right that $200K won't buy a house with a pool in most desirable parts of Texas, but your quip about $1M houses in Frisco is misleading. Frisco is not just a "random suburb nobody outside of Texas has heard of." It's a very desirable suburb on the fast-growing north side of the DFW Metroplex.