Here you go https://pypi.org/project/pylivecoding/
HN user
kilon
Built a live coding library for python that allows me to reload code I edited while it was executing. It has repl and debugger support and it can be run even for embedded python. It's pretty granular so it can reload modules or even individual objects. Unlike the existing module reload python function it can change object references to the updated code and delete old objects and their references from memory. This way in the next call only the latest code is executed. I built something similar for C code too.
youtube greece is down returns "oops" error but i can still playback a 2 hour video that I was already watching before it went down. Trying to open any other video or channel returns this error.
A possible approach is to use Cython to convert Python code to C code and then compile that code to WebAssembly. I would not be surprised if there is a tool for that already
Colored pencils, pens and notebooks. Excellent opportunity to rest my eyes away from the computer screen.
Well judging from the fact that my first computer my father bought back in 1988 Amstrad CPC 6128 is still alive and kicking with very active community and more development tools than it ever had, I think its safe to assume that software never dies. Only thing it takes is a small dedicated community and it can last for centuries. Partly because father and mothers infect their sons and daughters with their passion for the technology and the the loop never ends. What else never dies is necrophilia in software , apparently people are addicted to declaring software dead prematurely. Oh and of course clickbait because some people are desperate for views. It started with Java back in to 2000s and still going strong. I am not fan of Java but I am also not that delusional to declare Java dead. So no I think its pretty safe to assume VBA is not going anywhere.
Python syntax can be heavily and easily manipulated via the ast module. An example of this is hylang https://github.com/hylang/hy
Rust is very unpopular. Popular being besides the usual suspects Assembly, Visual Basic, Delphi, Objective C , Swift etc. Finding the popularity of a language is actually pretty easy, ignore all the blog posts and opinion pieces of any kind and focus on third party libraries availability, documentation and benchmarks. Even on benchmarks Rust score very low making its “as fast as C” claim speculative to say the least. Strictness of a Rust also makes it highly unlikely that the language will become popular any time soon. Judging from the fact that innovation of any kind is one big reason for users to stay as far away as possible, even if that innovation ends up being part of all programming languages out there. Explains why innovation has stagnate the last century in software. So my rule of thumb is “if many people talk about it then most likely it’s popular if a ton of people talk about then it’s most likely unpopular”. So it’s definetly an indicator in a bell like curve.
IT runs on a wide array of technologies. Desktop games and 3D graphics which the area I focus and obviously a massive part of the software market if we include consoles and mobile devices , C++ still is king. Most games nowadays use either Unity or Unreal, which is C# or C++. Java is almost completely absent apart of course from the Android. Of course native iOS is still Objective C and Swift. AI another field that interests me is dominated by Python. Also if we venture outside the commercial part around 40% of software is written in languages that you will never hear anything about them . Mainly because are small projects where using any language is not an issue. Generally a vast majority of the IT is definetly not Java but a wide group of highly popular languages mercilessly bombarded by thousands of unknown languages struggling to gain a fraction of a percentage in terms of growing their community. Essentially strength in numbers. Software is chaotic field of countless of technologies. Even something as big as Java has no hope of dominating because it’s impossible for a language to excel in billion different scenarios. So don’t worry Java won’t be conquering the Software world any time soon.
The irony of the thing is that in manual memory management languages you end up doing your own garbage collectors and in garbage collector languages you end up doing your own manual management. Unfortunately if you look in a language to solve such complex problems you are heading straight to severe disappointment land. Same shit different package. I still prefer dynamic languages by a long margin because of their ability to do decent metaprogramming and reflection which is essential for managing any form of data. Pick your poison and enjoy the hype while it lasts.
I don’t. I keep my super sensitive data in my head. I never believed in computer security and never will. But the I never believed in security in general. Why on earth you would need an antivirus for a Mac ? I don’t even remember the last time avast gave me a virus warning on Windoom 10. Nowadays it’s mostly worms, ransomeware and spyware , rarely a Trojan horse. The age of virus has long gone after the start of the age of not slow internet.The only thing I do is to backup my data via Dropbox and megasync.
If you really need security, get a computer , disconnect it from the internet. The end.
If the sofware is from the 80s that is very good news, it means it runs on simpler hardware and the code will be simpler and easier to fix. Which is what made it viable for us to code in Assembly back in the 80s and early 90s with the same ease someone codes in c# nowadays. Coding in Assembly now is pure insanity.
Sure you could still write super ugly code but super ugly simple code is far better than super ugly complex code. Even if it comes with a forest of gotos.
The only thing it gets in my nerves is lack of comments and documentation. The fallacy that code can be remotely as easy to understand as natural language text. The rest I can endure and tolerate.
I will take the money for the Yacht and buy a submarine. Enjoy the depth before we completely ruin them via climate change and pollution.
I guess I am heretic for breaking my project to a collection of DLLs. Ironically I am doing it over a 2 mil lines of code statically linked code base. The statically linked code base takes 150 seconds to build and my much smaller project only 4 seconds.
I have also designed it that way to do live coding in C and I have made a similar library for live coding python .
I am addicted to DLLs , send help :D !
Nothing impressive but its a start
Why is this a problem ?
there are tons of services only that will allow you to code online using any language eve C , C++ and Assembly. From inside the browser of course. Of course I am not recommending a beginner to start from any of those languages but it shows that JS does not have the monopoly of in browser coding. If you have to stick with browser no matter what.
Ideone is a popular example https://ideone.com/
That's debatable. It's not as if downloading Python and making your first app will take you more than a few seconds, minus download time.
Set up is rarely an issue, once you set up a language even as complex as C++ its completely automated. You press a button and magic happens.
If the biggest selling point of a programming language is that it comes preinstalled with the OS of your choice, its not much of a selling point when the average user downloads and installs GBs of data just to play the latest game hype like Fortnite.
The only people who mind installing stuff are predominately web devs. 99.9% of users out there are fine with it for more than 6 decades now and that wont be changing any time soon.
I have implemented live coding via DLLs for C , it’s not hard to do and can easily replace gdb. I don’t think that gdb offers live coding outside the box. Inspecting live state and to an extend REPL abilities do exist in GDB.
I was never a fan of IRC although I am still a part time user since 1995. I was always annoyed losing replies just because I went offline and of course all the weird self disconnects and occasional banning bots. Sending files was also a big pain. But was simple to use and with tons of communities so I never actively complained about it. I converted to Discord and never looked back. On the other hand I was never deep into social activity online.
Discord. It was made mainly for games and it has exploded the last few years for pretty much about everything. I was introduced to Slack because the programming language I was using had its official channel there. They had also an irc channel but people were not willing to use it. Then I made a discord server mainly because I was using Discord for Unreal Engine , which has to this day the most active community there according to my experience. Without me realizing it the main dev of the language I was using abandoned Slack and used my Discord server. I made him admin and the rest of the community reluctantly followed cause being coders saw no point using a game orientated chat client but a year later not only the Slack server was almost completely abandoned but not one even mentioned Slack or IRC.
I don't know why but I read first the title as "CastSatan"
oh wait ... I now know why
It's a C++ article.
One more epic discussion on Python, where we have the unique opportunity to learn that using C libraries from Python is "cheating".
I could not agree more
It's definitely cheating to use C code with the exception of most Python libraries that already are to a large extent nothing more than thin wrappers over existing C libraries or the tiny fact that the most popular by far implementation of Python , CPython, is almost 50% implemented in the C language, including the standard library.The author even dared include "C" in the name of the implementation.
Those cheaters, becoming bolder and bolder every day.
Damn them !!!
Who would have guessed that compiled, static, non-dynamic, hardware accelerated code would be a ton more performant than runtime, highly dynamic, garbage collected and very powerful code that is not hardware accelerated.
Home computers were never personal in any interpretation of the word. They were mostly shared among family members which is why unlike PCs were made to play both games and run software.
Calling a home computer a PC is showing a fundamental lack of understanding not only what PC is and was but more importantly what home computer was and why its named home computer and not pc or game computer or whatever.
in other news google is integrated in the browsers address bar, scientists are baffled how it managed to fit in such small space and how it got there.
google search, since it was integrated to the address bar its super easy to find the right site and you longer have to remember or guess the address , hence the name has become pointless.
I have 10 years experience in law and father is a lawyer and even though her remark has obviously a comedic basis , she is very much correct. Objectivity is a huge deal in the legal profession, the ability to separate emotion from critical thinking. Of course its easier said than done which is what creates the laughing part :)
Simplification is an illusion. Simplification works great for understanding and learning , I completely agree but is terrible on problem resolution. Mainly because problems don't get simple just because you want them to. Secondly because the nature of knowledge and the world we live in is of immense complexity.
You are absolutely correct though that we are indeed driving off a cliff of incomprehensibility , I cannot count the times when I have caught , including myself, lawyers and coder not understanding even basic concepts like OOP or legal responsibility under the influence of drugs and alcohol. It's not that the concepts are hard to understand but they are so numerous it becomes so easy to get lose track of where you are , where you were and most importantly where you are going.
When I started coding back in the end of 80s coding in Assembly was not that hard. After 30 years of coding I decided to go back to Assembly I just got blown away how much more complex it became, though obviously not surprised, and of course I discovered that even Assembly coder mostly use C libraries cause well, otherwise it gets insane really fast.
My solution to this may sound insane but in life I have learned that when I have a crazy idea ,usually, I end up being correct. I do believe that AI wont replace us but rather augment us. I am not talking about cyborgs , singularity and these nonsense I am talking about software that helps you navigate through the chaos of information. And when I say AI I mean it in the most vague way possible obviously the technology will change in the future in so many ways.
The only viable solution for the human being is to either find news ways to take advantage of the potential of his own intelligence or augment himself in some way.
Afterall its not a secret that AI is already used to construct AI and this opens the door to a ton of potential.Afterall is it not coding all about automated decisions making ? It's not as if we have not being trusting automated machines for thousands of years. But nonetheless humans are terrified of technology. The marvel of the human condition.