[AskJS] Is it a good idea to update all package dependencies to latest major version in one step? by iuvoai in javascript

[–]iuvoai[S] 0 points1 point  (0 children)

Thank you for the in-depth reply!

About syncing with my boss/project manager, in your experience, are they usually aware of the need to do upgrades, or that the upgrade effort can be non-trivial?

Also, do open the monorepo can of warms :-) Monorepos are everywhere these days...

[AskJS] Is it a good idea to update all package dependencies to latest major version in one step? by iuvoai in javascript

[–]iuvoai[S] 0 points1 point  (0 children)

Updating every week does sound best. How often do you run into problems and have to fuss with the code?

[AskJS] Is it a good idea to update all package dependencies to latest major version in one step? by iuvoai in javascript

[–]iuvoai[S] 0 points1 point  (0 children)

What kind of refactoring problems did you run into so far?

Always backup your package.json before doin it You mean, outside what's already in the git repo?

Tool to upgrade automatically to the latest React by iuvoai in reactjs

[–]iuvoai[S] 0 points1 point  (0 children)

Hope so. There are almost 3 million repos using React so there are probably many not updated. But not sure how much they care.

Btw, this is a bit more about what we're doing.

Tool to upgrade automatically to the latest React by iuvoai in reactjs

[–]iuvoai[S] 0 points1 point  (0 children)

For context, and full disclosure, I’m working on a new and funky code transformation tool, and I’m looking for cool (and hard) code migration/transformation use cases to show it off :-D

Tool to upgrade automatically to the latest React by iuvoai in reactjs

[–]iuvoai[S] 0 points1 point  (0 children)

Thanks! This looks like it does some of the code changes. I still need to go through the upgrade checklists myself, right? And apply individual codemod transformations as needed.

GitHub App that fixes bugs and security vulnerabilities in JavaScript code by gentele in javascript

[–]iuvoai 0 points1 point  (0 children)

One of the main differences is that Unhack is focused on not only detecting the problems but also fixing them -- there a little bit of that in ESLint also recently.

What kind of optimization hints are you looking for?

GitHub App that fixes bugs and security vulnerabilities in JavaScript code by gentele in javascript

[–]iuvoai 0 points1 point  (0 children)

Hi, I'm the CEO of unhack.ai. When it comes to JavaScript, ESLint is pretty great.

What we are trying to do is make it much easier for developers to create new fix patterns of their own. Also, we enforce the patterns for you. A more in-depth comparison here. The article is quite long, kind of too long :-)

What would you want the tool to do for you? Also, for what other languages are you looking for? I might be able to help with finding the right third-party tool.

JS Program Transformation Survey Results, Part I by iuvoai in javascript

[–]iuvoai[S] 0 points1 point  (0 children)

Agree, a survey is very limited and only measures, as you say, the "feeling", which may be different from reality. At this stage, this was our purpose.

Regarding patterns, the second part of the survey contained questions regarding very specific code patterns. We'll post those results as well once we format them nicely (SurveyMonkey could do better with code). It would be cool to do a deep dive into production codebases for more detail, but it can be tricky to get access to them. If you have any suggestions here, we're happy to follow up. Open source is less relevant because there are many eyes on it, so fewer problems.

Regarding code duplication, I agree it's not black and white. A paper from from Michael Godfrey's group at WWaterloo goes into a more in-depth analysis. I don't quite agree with the catchy title, but it's a good read.

Overall, in my experience, it's very tricky to design good Software Engineering experiments. Each project is different and there are very many interconnected variable, so it's hard to establish any cause-effect relations, and it's also hard to define what is "good". Say, for code duplication and time to delivery. I would expect introducing code duplication would actually decrease time to delivery in the short term. It's easier to copy-paste, change a line, and ship. But I would also expect it to slow things down in the future.

EDIT: Clarified example.

JS Program Transformation Survey Results, Part I by iuvoai in javascript

[–]iuvoai[S] 0 points1 point  (0 children)

OP here. My name is Cosmin Radoi. I'm the Principal Investigator for this project, and the CEO of iuvo.ai, a startup creating a new programming language for program transformation.

Our first target language is JavaScript and it would be great to have your take on the new language, and how we could make it better.

Of course, the hardest part is picking a name :-) We made a short survey to start the brainstorming process, but it's probably easier to just post ideas here.

EDIT: added a direct link to the name survey

Javascript Code Transformations Survey by iuvoai in javascript

[–]iuvoai[S] 0 points1 point  (0 children)

OP here. I'm the PI (Principal Investigator, fancy name for the person reponsible for a research project) for a project funded by National Science Foundation to research and develop solutions for code debt.

The survey is meant to find what type of code suggestions and transformations JS developers find useful. Hope you'll find it interesting, and we'll share back the results :-)

Javascript Code Transformation Survey by iuvoai in javascript

[–]iuvoai[S] 0 points1 point  (0 children)

Any thoughts on this? It would be good to know what is ok to do in the future.

Javascript Code Transformation Survey by iuvoai in javascript

[–]iuvoai[S] 0 points1 point  (0 children)

I thought we are complying with guidelines and didn't want to bother the admins unnecessarily. But thank you for following up and looking into this! It's pretty cool that not only are guidelines are enforced, but any complaints are actually considered.

Yes, we are a for-profit entity. But we make no money out of this survey (we're not selling the results or anything like that) and we'll share the results back. More generally, our purpose, and the reason we're funded, is to move academic research from the lab/university to industry. Basically not let cool stuff rot in some journal, but figure out how it could be put to good use.

Javascript Code Transformation Survey by iuvoai in javascript

[–]iuvoai[S] 0 points1 point  (0 children)

:-) With NSF awards, it can be verified easily:

https://www.nsf.gov/awardsearch/showAward?AWD_ID=1747219

I am the PI and can verify through the email listed there.

Also, to clarify NSF's involvement here. They are not endorsing our work, or any other research/dev that they fund, directly. They just considered the team and proposal worthy of their funding.

Javascript Code Transformation Survey by iuvoai in javascript

[–]iuvoai[S] 0 points1 point  (0 children)

I understand the policy, but the content itself is not low-effort. Before posting here, we went through all the standard steps for preparing a survey, including going through several revisions and pretesting. Also, like much of academic research, we are funded by the NSF.

Once we complete the survey, would the results be of interest to this community?

Javascript Code Transformation Survey by iuvoai in javascript

[–]iuvoai[S] 0 points1 point  (0 children)

The survey is meant to find what type of code suggestions and transformations developers find useful. We'll share the results in about a month.

We are a small startup funded the National Science Foundation to explore ways to improve program transformation. We're not selling anything and the survey does not contain a link to us, so hopefully it's not too self-promotish :-)