Verilog is not the best language, totally agreed on that. Right now we're not in a place to change that, but maybe one day!
475 karma · joined June 23, 2015
Former backend engineer / labor union data monkey.
paul at silogy io
Verilog is not the best language, totally agreed on that. Right now we're not in a place to change that, but maybe one day!
As for buck2, we decided to go with it for a few reasons:
More forgiving with gradual adoption, from our experience -- running non-sandboxed actions in bazel is a pain, buck2 has been much easier to plug into existing flows.
Buck2 installation is easier, and by extension, is simpler to embed into our test runner.
Respectfully, bazel's implementation is a monolith beyond comprehension -- if we want to modify buck2, and package our own fork, we have confidence that we could do that.
CI is one component of our platform. Most other CI tools are pretty agnostic about how tests are structured, though. We also integrate a way to structure your tests into groups so you can control when each test is called. For example, if one test out of 500 fails, it's super easy to rerun that one test with verbose logging and wave dumping enabled. We then also track test pass/fails over time, have tools to leave comments for coworkers on waveforms and logs in the browser like in Google Docs, etc.
Out of curiosity, what do you mean by "Smaller companies get help from larger companies in development and verification"?
We speed up developers in two ways: For debugging individual tests, we have a web based log viewer and web based waveform viewer, so you can share test results or look at waves via a URL, instead of opening VNC. More holistically, we're building a chip focused workflow that will make tests first class -- infrastructure to track tests, and by extension measure design health, will be in one place, instead of implemented with a bunch of handrolled, bespoke tooling.
The difference is (a) our customers don't want to be in the devops business, and for startups especially it's a severe barrier to entry that we can make disappear, and (b) we are going to keep investing in our products (especially collaboration tools and integrations with waveforms, logs, etc) long past the point where a chip company would decide their internal tools are "good enough" (hint: they're generally not).
UVM support is one of the next items on our priority list.
Source: former Cloudflare employee
* Unions could definitely use better software, but I don't think software can replace their core functionality.
* Many companies whose main product is a seemingly simple mobile app require surprisingly large staffs.
* Are unions actually bloated? The Teamsters for example had 616 regular staff and spending of $209 million in 2019, over a membership of 1.3 million workers. That seems reasonable to me. https://www.unionfacts.com/union/Teamsters (anti-union but nonetheless useful site)
* Unions do lots of things besides electing representatives, voting on issues, and coordinating actions, all of which are big jobs in themselves. This may include contract negotiation, job training, research, organizing, and other things I can't think of right now.
* To focus specifically on organizing for a moment, a union is a coordination problem which takes a lot of work to overcome. Quoting myself from another comment (https://news.ycombinator.com/item?id=24079465): > The labor organizer's job is to convince the worker, who likely and often rightly fears for her job if she actively and publicly supports the union, that it's still the right thing to do. Not only convince intellectually, but psychologically prepare the worker to stick with the union effort in the face of a concerted effort from the employer to defeat it. To do that the organizer needs to ask the right questions, listen carefully, build trust, and finally push, and potentially do this repeatedly with the same person. It is psychologically demanding and not everyone can do it; I tried and I couldn't. A chatbot cannot convince a factory worker with kids to feed that he needs to stick up for his coworkers who in turn will stick up for him.
Or are you saying that the Teamsters bureaucracy in particular is bloated relative to what their organization needs? I'm not familiar with them.
But responding to one of your points, and I don't think this is taught very well in schools, the specific discrimination that Black people faced went on for a long time after the end of slavery. For example, here in what is now considered progressive Oakland, CA, Black people were kept out of many jobs through the 1940s and 50s, including as streetcar drivers. Also, they were excluded from government subsidized mortgages through the 60s, which impeded their ability to build wealth and live in good conditions. These examples of explicit racial discrimination happened well within living memory.
Subjectively, it seems to me like Japan and South Korea are somewhat culturally similar, but they are not the same, and the differences are important to people there. Furthermore, 20th century history has created a lot of hatred on both sides. These wounds are starting to heal with time and _I think_ the younger generation in Korea tends to care less about the issue. Many people in both countries go to the other country for tourism, and each country's cultural exports are popular in the other country.
For an analogy (though not a close analogy, because the political situation is different): Israel and Syria are pretty similar though, right? Both speak Semitic languages, they have similar food, similar weather, similar religions, and often you can't tell them apart just by looking at them. So they should be friends. :)
In particular, he argues that the way you avoid things like World War II is in part precisely by making sure the military does not make decisions of war and peace.