of course it wasn't as big as this new AI push, but since the 80s AI over promised and under devlivered, it's not the fault of AI, but the greed of the business people.
You're right, which is why factories are already automated that way.
Where humans still reign supreme is in two areas: assembly and work in human-centered environments.
So, it's a lot easier to have a human welder do welding inside a Hyundai-built ship because the interior of the ship is designed for humans to walk around.
Likewise, it's easier for humans to work with machines on assembly, because humans are flexible and assembly lines typically need to be rapidly reconfigured for different production runs.
A purpose-built facility excels at maximizing throughput for mass produced parts (paperclips), but doesn't work well for lower-volume integration tasks (cars, ships, etc.).
I remember an old interview with Musk where he said that when he just got into manufacturing, he would try to automate all the things, but then found that it makes the assembly line overly rigid and difficult to improve, especially when they're still learning about a new assembly process. So he switched to only automating only the obvious parts at start, keeping humans in the loop for every step where it's not entirely clear how best to perform it, and then automate these other steps gradually as they learn.
So I assume that the idea is that humanoid robots could fully replace some of these temporary roles (or allow a single human to operate several robots), maintaining flexibility while a new production line is optimized, and then easily moved off to another.
Pretty sure he was simply informed of all of that and he put himself on a pedestal as the CEO as he's done for countless interviews.
He seems to have a mostly surface level of understanding of what goes on at his companies, which is all a CEO needs. But it doesn't justify all the people I see idolising him as some sort of technical God. I heard he's a master of PoE, too ;)
Yeah, I suppose that could be true, but I don't think it takes away from the reasoning process and the benefits of holding off on premature full automation.
You build a factory machine. Then the job changes and you need to build an entirely new machine. You offer a new product with a different shape and you need to build an entirely new machine.
Doesn't have to be humanoid specifically but a roaming robot based on biological patterning is so much more capable for retooling.
Boston Dynamics makes other robots as well. I think the key innovation behind their robots is broad applications and easy programming. While making a custom factory robot could take a half year, configuring and installing a Boston Dynamics robot takes days.
The appeal is to replace workers by using a generic platform, that when mass produced, costs less and don't require retooling. One human commodity for a mechanical one.
why do they need to _look_ human though? two legs, torso, head, two arms, does a robot need that. Why not just a giant arm (or five whatever) that can roll around?
Evolution's optimisation pressure on the humanoid shape has already done a lot of that work for us. Certain instruments like the hand and thumb are very thoroughly refined in humans. On top of that, most interfaces in the world are already designed for humans, so by making a humanoid robot you guarantee it can operate in a superset of environments that a human can.
They explicitly want robots that can replace what humans currently do, in existing human workstations, etc. You don't have to redesign a tractor for a humanoid bot. This is a kind of skeuomorphism but more functional than ornamental.
There is a lot of machinery that is designed to be operated by humans using their arms and legs, a lot of processes built around it. The appeal of humanoid robots is in the idea that all this stuff wouldn't need to change. Whether or not this is possible remains to be seen
maybe it's a generational difference ? I personally feel burned out by all the generetive AI stuff, the internet was already ruined with bots, and now generitive AI took the garbage to the next level.
This also blows my mind, instead of adding more berucracy to apply for funding to review funding to give funding.
just give tax credits based on innovation / investment criteria, to both companies and employees, Europe needs digitalization so badly, yet they find more complex ways to enable it.
Tax credits make sense for companies already with a steady profit margin. Cloud in particular is a capex heavy business so for a new company that is not very useful for at least the first few years.
Just give it to the companies. That still incentivises equity investment (it lowers risk and raises the potential upside of profitability). It also make underwriting standard loans easier too.
Does gpt produce efficient regex? Are there any experts here that can assess the quality and correctness of gpt-generated regex? I wonder how regex responses by gpt are validated if the prompter does not have the knowledge to read the output.
> The second quote was not escaped because in the regex $tok =~ /(\\+)$/ the $ will match the end of a string, but also match before a newline at the end of a string, so the code thinks that the quote is being escaped when it’s escaping the newline.
The only time you'd want to write assembly in production code would be if you need to hand roll some optimisation. So I don't really understand your point here,
That was one of my first uh oh moments with gpt. Getting code that clearly had untestable/unreadable regexen, which given the source must have meant the regex were gpt generated. So much is going to go wrong, and soon.
'I'm writing a nodejs javascript application and I need a regex to validate emails in my server. Can you write a regex that will safely and efficiently match emails?'
GPT4 / Gemini Advanced / Claude 3 Sonnet
GPT4: `const emailRegex = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;`
Full answser: https://justpaste.it/cg4cl
Gemini Advanced: `const emailRegex = /^[a-zA-Z0-9.!#$%&'+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)$/;`
Full answer: https://justpaste.it/589a5
Claude 3: `const emailRegex = /^([a-zA-Z0-9._%-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,})$/;`
Full answer: https://justpaste.it/82r2v
Whereas email more or less lasts forever (mailbox contents), and has to be backwards compatible with older versions back to (at least) RFC 821/822, or those before. It also allows almost any character (when escaped at 821 level) in the host or domain part (domain names allow any byte value).
So a Internet email address match pattern has to be: "..*@..*", anything else can reject otherwise valid addresses.
That however does not account for earlier source routed addresses, not the old style UUCP bang paths. However those can probably be ignored for newly generated email.
I regularly use an email address with a "+" in the host part. When I used qmail, I often used addresses like: "foo-a/b-bar-tat@DOMAIN". Mainly for auto filtering received messages from mailing lists.
…which both excludes addresses allowed by the RFC and includes addresses disallowed by the RFC. (For example, the RFC disallows two consecutive dots in the local-part.)
I take the descriptivist approach to email validation, rather than the prescriptivist.
I know an email has to have a domain name after the @ so I know where to send it.
I also know it has to have something before the @ so the domain’s email server knows how to handle it.
But do I care if the email server is supports sub addresses, characters outside of the commonly supported range (eg quotation marks and spaces), or even characters which aren’t part of the RFC? I do not.
If the user gives me that email, I’ll trust them. Worst case they won’t receive the verification email and will need to double check it. But it’s a lot better than those websites who try to tell me my email is invalid because their regex is too picky.
The HTML email regex validation [1] is probably the best rule to use for validating an email address in most user applications. It prohibits IP address domain literals (which the emailcore people have basically said is of limited utility [2]), and quoted strings in the localpart. Its biggest fault is allowing multiple dots to appear next to each other, which is a lot of faff to put in a regex when you already have to individually spell out every special character in atext.
I generally agree, but the two consecutive dots (or leading/trailing dots) are an example that would very likely be a typo and that you wouldn’t particularly want to send. Similar for unbalanced quotes, angle brackets, and other grammar elements.
That would be bad form, IMO. The user may have typed john..kennedy@example.com by mistake instead of john.f.kennedy@example.com, and now you’ll be sending their email to john.kennedy@example.com. Similar for leading or trailing dots. You can’t just decide what a user probably meant, when they type in something invalid.
Yeah, that's about as far as I've ever been comfortable going in terms of validating email addresses too: some stuff followed by "@" followed by more stuff.
Though I guess adding a check for invalid dot patterns might be worthwhile.
Actually pretty good response if the programmer bothers to read all of it
I'd be more emphatic that you shouldn't rely on regexes to validate emails and that this should only be used as an "in the form validation" first step to warn of user input error, but the gist is there
> This regex is *practical for most applications* (??), striking a balance between complexity and adherence to the standard. It allows for basic validation but does not fully enforce the specifications of RFC 5322, which are much more intricate and challenging to implement in a single regex pattern.
^ ("challenging"? Didn't I see that emails validation requires at least a grammar and not just a regex?)
> For example, it doesn't account for quoted strings (which can include spaces) in the local part, nor does it fully validate all possible TLDs. Implementing a regex that fully complies with the RFC specifications is impractical due to their complexity and the flexibility allowed in the specifications.
> For applications requiring strict compliance, it's often recommended to use a library or built-in function for email validation provided by the programming language or framework you're using, as these are more likely to handle the nuances and edge cases correctly. Additionally, the ultimate test of an email address's validity is sending a confirmation email to it.
Support for IDN email addresses is still patchy at best. Many systems can’t send to them; many email hosts still can’t handle being configured for them.
There really ought to be a regex repository of common use cases like these so we don't have to reinvent the wheel or dig up a random codebase that we hope is correct to copy from every time.
> if you know where to find something no point in knowing it.
Nonsense. And you know it.
First, you need to know what to find, before knowing where to find it. And knowing what to find requires intricate knowledge of the thing. Not intricate implementation details, but enough to point yourself in the right direction.
Secondly, you need to know why to find thing X and not thing Y. If anything, ChatGPT is even worse than google or stackoverflow in "solving the XY problem for you". XY is a problem you don't want solved, but instead to be told that you don't want to solve it.
Maybe some future LLM can also push back. Maybe some future LLM can guide you to the right answer for a problem. But at the current state: nope.
Related: regexes are almost never the best answer to any question. They are available and quick, so all considered, maybe "the best" for this case. But overall: nah.
While I agree with your point that knowing things matters, it is entirely possible with the current batch of LLMs to get to an answer you don't know much about. It's actually one of the few things they do reliably well.
You start with what you do know, asking leading questions and being clear about what you don't, and you build towards deeper and deeper terminology until you get to the point where there are docs to read (because you still can't trust them to get the specifics right).
I've done this on a number of projects with pretty astonishing results, building stuff that would otherwise be completely out of my wheelhouse.
Funny for me there have been instances where the LLM did push back. I had a plan of how to solve something and tasked the LLM with a draft implementation. It kept producing another solution which I kept rejecting and specifying more details so it wouldn't stray. In the end I had to accept that my solution couldn't work, and that the proposed one was acceptable. It's going to happen again, because it often comes up with inferior solutions so I'm not very open to the reverse situation.
I should have clarified better. Because, indeed, I have the same experience with copilot. Where it suggested code that I disliked but was actually the right one and mine the wrong one.
I was talking about X-Y on a higher level though. Architecture, Design Patterns, that kind of stuff. LLMs are (still?) particularly bad at this. Which is rather obvious if you think of them as "just" statistical models: it'll just suggest what is done most often in your context, not what is current best for your context.
Yea I don't think the crop of LLM is useful for this. They let themselves be lead by what's written, and struggle to understand negation even. So when I suspect there is a better solution, I have a hard time getting such an answer, even if asking explicitly for alternatives. I doubt it's just a question of training, they seem to lock themselves on the context. When using Phind, this is somewhat mitigated by mixing in context from the web, which can lead to responses that include alternatives.
Sure, why bother understanding anything if ChatGPT can just produce the answers for you ;). You don't have to understand the answers even. Actually you don't need to understand the question also. Just forward the question from your manager to ChatGPT and forward the answer back to your manager ;). Why make life difficult for yourself?
As far as I know it's also the only company in the world where the US goverment has a major stake in (25% I think).
Good news is that China has delivered their 8mm lithography machines and are promising 3mm sometime in the next two years. maybe this will introduce more competion down the road
> Good news is that China has delivered their 8mm lithography machines and are promising 3mm sometime in the next two years. maybe this will introduce more competion down the road
I have my doubts about this.
SMIC is still struggling with 7nm, unable to deliver at scale. 3nm in two years sounds like a leap.
No way immigration doesn't help, I see this in germany help so many startups enter the market and build successful businesses that drive the economy.
The problem is that it's not a solution, the solution is to constantly push against inequility and increase social mobility while investing in productive industries (less housing speculations more manufacturing).
those are tough bills to swallow and they will lead any elected goverment out of the office, because strong shifts to an economy like this come with a lot of short term pain. and no one is willing to setdown and deal with 10 years of poor economy so that the future of the country is better.
Traditionally, it has been helping. It's not been helping for a couple of years now.
> strong shifts to an economy like this come with a lot of short term pain. and no one is willing to setdown and deal with 10 years of poor economy so that the future of the country is better.
This is the problem in a nutshell, we need to make changes and we can't stomach it politically.
You should checkout powershell; it supports converting CSV into in-memory structured data and then you can run regular powershell queries on that data:
$> csvData = @"
Name,Department,Salary
John Doe,IT,60000
Jane Smith,Finance,75000
Alice Johnson,HR,65000
Bob Anderson,IT,71000
"@;
$> csvData
| ConvertFrom-Csv
| Select Name, Salary
| Sort Salary -Descending
Name Salary
---- ------
Jane Smith 75000
Bob Anderson 71000
Alice Johnson 65000
John Doe 60000
You can also then convert the results back into CSV by piping into ConvertTo-Csv
/tmp/> "Name,Department,Salary
::: John Doe,IT,60000
::: Jane Smith,Finance,75000
::: Alice Johnson,HR,65000
::: Bob Anderson,IT,71000" |
::: from csv |
::: select Name Salary |
::: sort-by -r Salary
╭───┬───────────────┬────────╮
│ # │ Name │ Salary │
├───┼───────────────┼────────┤
│ 0 │ Jane Smith │ 75000 │
│ 1 │ Bob Anderson │ 71000 │
│ 2 │ Alice Johnson │ 65000 │
│ 3 │ John Doe │ 60000 │
╰───┴───────────────┴────────╯
for something a bit more robust, check out DuckDB. It's a library you can embed, use it to run SQL on local files as well as connect to databases, do joins, analytics, etc.
Agreed. The article mentioned duckdb and I'm her to thumbs-up the use of DuckDB wholeheartedly. If you like the world of public CSV files as data sources that you can query or cross-query, duckdb is the tool for you. Just follow the demo on the duckdb website and you'll be wow'd for sure.
I use both, and I have found it helpful to have nushell around when munging csv and parquet files, even when working with duckdb - I find it quicker to ask for the first few rows of a thing or do simple stuff with it, then deeper analysis with duckdb.
- Send the csv data from stdin (using echo and referred to in the command by -)
- Refer to the data in the query by stdin. You may also use the _t_N syntax (first table is _t_1, then _t_2, etc.), or the file name itself before the .csv extension if we were using files.
- Pipe the output to the table command for formatting.
- Also, the shape of the result is printed to stderr (the (4, 2) below).
$ echo 'Name,Department,Salary
John Doe,IT,60000
Jane Smith,Finance,75000
Alice Johnson,HR,65000
Bob Anderson,IT,71000' |
qsv sqlp - 'SELECT Name, Salary FROM stdin ORDER BY Salary DESC' |
qsv table
(4, 2)
Name Salary
Jane Smith 75000
Bob Anderson 71000
Alice Johnson 65000
John Doe 60000
You might find a lot of interesting tools in the Datasette ecosystem. Data dashboarding for SQLite with all sorts of import and export and visualization plugins.
What’s really interesting about it is that Awk is now, finally, getting support for CSV. But I bet a large amount of Awk+CSV use cases can be met with SQLite and SQL+CSV.
The clickhouse-local tool is also really great for querying a bunch of systems, and it has connectors and converters for a whole bunch of other systems and formats.
Not necesarly the only way as someone who often interviews candidates, if I'm getting bombarded by spam applications, the least you can do for me to take your CV seriously is a cover letter related to the job posting / company.
I don't understand any candidate who sends out a letter without researching the company for 30 minutes and taking another 10 to write a thoughtful cover letter. if you're not willing to put that effort into your potential future position, it's not even worth opening the CV from my side.
>I don't understand any candidate who sends out a letter without researching the company for 30 minutes and taking another 10 to write a thoughtful cover letter.
I sent a cover letter to my first 3 jobs. They never checked it. Never directly asked but it comes up in conversation at some point when talking about other new recruits.
I don't see the point in a CV if you're reaching out to the recruiter. That fried request message on LinkedIn or first email is your "cover letter". Letting them know who you are and what you want.
That goes a long way, tailoring the CV and, if absolutely needed, cover letter for each application. The CV also when recruiters reached out to you, as they still have to present it to HR and hiring managers (also having a recruiter presenting the CV and candidate helps a lot, and means the CV can be a bit less polished). And if recruiters, or the companies behind them, require a cover letter, being contacted first by the recruiter makes writing those a lot easier since you don't have to cold sell yourself as much. And the first discusion / phone screening, ehich propably didn't require a cover letter, gives you hints and hooks to use in the letter (I say that as person who hates selling myself and especially writing cover letters, also I found my last job that way).
Now the trickey part is, so, to have solid recruiters hiring for real positions reaching out to you. For some reason, they did in my case more or less every time I kind of needed it. I have not the slightest clue so why, my LinkedIn profile was up to date but far from polished...
Well, I content myself with being lucky for some reason, and I am aware how lucky I am when it comes to that and quite grateful to universe, and hope to never have to go through that whole process again, because applying, getting new jobs, tinse and repeat, gets stressful at a certain point. And now I reached a point in my career where I like the stability of a job, collectively (and relatively high) bargained salary, good, bordering very good to almost stellar, retirement benefits, I job that is truely challenging (new stuff that allows me use my experience almost completely, while being borderline scary at times) working on a product for which projected end-of-service-life is over a decade after my legal retirement age.
That being said, I had a period in which I had to write a ton of applications whipe seeing the clock running down on my unemployment benefits. That alone can be soul crushing, so I try to cut people somenslack when it comes to CV and cover letter polishing. It still means one shouod put some thought behind both tasks so.
I will never do cover letters-- "Hey, spend 30-60 minutes on this so we can slip it into the pile of 500 applicants where it will never see the light of day! Yay!"
I've been on the interviewer side too and I must say that I had the complete opposite experience. I've never seen a cover letter help a candidate (they mostly don't get read at all), only hurt a candidate chances. I wouldn't even read them unless they had glaring issues (like it's way too long) in which case I'd bin the applicant.
I think there is no issues in bundling software to provide a turn key solution, that way the customers can focus on their business, not the complexity that comes with digital solutions.
with that being said, I'm pretty sure marketplace regulations (such as booking.com) forces the marketplace to be out of the money flow. so this should be on the PSP side, it's strange that booking.com is halting payments this way.
another point is that they're collecting 4% interest on money that's not theirs ... I wonder if they plan on paying out the interest.
https://www.geekwire.com/2015/amazon-makes-echos-alexa-avail...
of course it wasn't as big as this new AI push, but since the 80s AI over promised and under devlivered, it's not the fault of AI, but the greed of the business people.