Good point. I've already bumped up the free usage plan on our backend and will probably keep the higher limits up for a while for the HN community. Will also update the language on our website. Enjoy :)
From 12/6/2014, 8:07:21 PM till now, @oshams has achieved 61 Karma Points with the contribution count of 19.
Recent @oshams Activity
Good point. I've already bumped up the free usage plan on our backend and will probably keep the higher limits up for a while for the HN community. Will also update the language on our website. Enjoy :)
Good point. That one example was more about illustrating function extraction. I've seen some very sophisticated doc strings especially for functions with more parameters. In other cases it can struggle, for fun I tried asking it to document a Y Combinator function and it got stuck in a recursive description. I thought that was very funny. :)
I will definitely post more examples over the coming days. In the meantime, why don't you play with the system yourself and feel free to ping me at omar@mutable.ai with any more feedback.
I love the roomba analogy! Definitely going to steal this. :)
Thanks! Looks cool. Definitely feel free to reach me (omar@mutable.ai).
Maybe a bit of both :) I think it's more common these days to find programmers who've never used pointers before. Arguably that's a loss for them, especially when their mental model of how memory works starts to get leaky.
But I think people will also learn tons too. At the end of the day, most people learn by example. If you can see what the AI does to your code or suggests as a completion, you will learn best practices faster.
We're in touch. For others interested in on-prem you can email me at omar@mutable.ai. Thanks.
I understand your frustration. I think people at times feel like they've graduated out of notebooks. But I think there is something truly special about the ability to visualize and inspect code all in one environment. I know that a majority of researchers at DeepMind (at least when I was there) use notebooks and many of them are excellent programmers!
We should certainly all strive to learn how to write better code and I think regular use of an AI tool like ours _can_ be pedagogical. Many people who did not have the time or opportunity to learn best practices can now join us in building technology because the AI is always there for them and never tires. AI assisted programming will help level out the playing field for talent around the world especially those without access to instructors or good job opportunities.
Thank you !
Thank you ! Congrats on your launch as well. Ploomber + MutableAI. :)
I'm glad you asked. You are right to suggest that proving the equivalence of two programs is in general impossible (equivalent to the halting problem). However, if you start with one program with a known special structure and apply a known manipulation, it becomes possible in special cases to guarantee equivalence with some reasonable assumptions about how the original program is used (e.g. to give a trivial example, if one of your tests is to hash the source code of the new program against a specific value it will fail that test after refactoring -- macros are not extremely far from this contrived example).
There is no replacing the developer (anytime soon) that's why we don't overwrite your code. You still have to review the suggested changes yourself. I personally don't want to spend more time making changes an AI can guess for me to improve my code and even if I have to review every change that still saves a lot of time.
Also I agree, test cases are also hard because while it's easy to generate some tests that verify some trivial behavior, most of the meaningful behavior of programs requires knowing more than just the types of the inputs & outputs. But I believe AI can help with even this problem.
Thanks, I think we should clarify this as well. Any call to our API via "Fast Forward to Production" (right click on notebook to see) or an autocomplete call.
Yes, most of our tech is not Jupyter specific. I just think it's an extremely good beachhead because of how prone to problems Jupyter notebooks are. Would you mind dropping me a line at omar@mutable.ai?
Yes, in many cases companies do not feel comfortable with their code leaving their network. This presents an interesting technical challenge as most of the large scale transformer models require large amounts of resources not only to train but even to serve.
We DO offer an on-prem version of the product that while requiring a decent GPU, does not exactly require people to go out and buy a fleet of TPUs.
I personally think there will be a lot of developments in the efficiency of these models (e.g. DeepMind's RETRO) as well as the usual compute efficiencies always improving.
However, I also believe there will always be an incentive to make the models as big as resources allow, because "more is different" as PW Anderson said in his famous essay and I give kudos to the OpenAI team for pushing the limit on these models.
Exactly, developer time is extremely valuable! Plus, even on an individual level wouldn't you rather spend less time doing something a machine can make a reasonably good guess for you? My internal heuristic has been anything that can be easily guessed is something AI + PL techniques should do for you.
I think developers in the future will have way more mental free space because of this trend towards accelerating developer tooling with AI.
Thanks for your comment. First I want to say I'm a big fan of prettier and no we're very different.
At MutableAI we're laser focused on actually _transforming_ Jupyter notebooks (beyond formatting). Meaning we will actually remove dead code and in some cases refactor your code for you. We also use large scale transformers / neural networks to document your code, which IIRC prettier does not.
Thank you. Can you please email me at omar@mutable.ai? I think having a number of well defined "flows" _especially_ for the use case you highlighted can save people a lot of frustration!
(Totally understand you on the SaaS objections -- I don't think you should ever feel like you can't run your code! In the individual plan you should not hit the limit unless many people are using the same key.)
Thank you! I completely agree. I certainly don't think people should give up using Jupyter because of the frustration of keeping code quality high enough to port to other environments. Test feature is coming very soon. Please feel free to email me at omar@mutable.ai if you have more thoughts on this.
Thanks, founder here. I personally try not to run cells out of order. But I feel like almost anyone at some point will want to run cells out of order.
The extraction is based partly on statistical edge detection. We are working on training transformers on actual diffs on GitHub that would be more natural.
Launch HN: MutableAI (YC W22) – Automatically clean Jupyter notebooks using AI
82 points • 49 comments
site design / logo © 2022 Box Piper