Earlier when you wanted to try a programming language, you needed to install compiler and IDE software to your computer. Now there are many on-line tools that allow you to test programming with many programming languages.
Many languages on one service:
https://onecompiler.com/
https://tio.run/#
https://www.codechef.com/ide
https://ideone.com/
https://www.codingninjas.com/studio/online-compiler
JavaScript
https://jsfiddle.net/
C and C++
https://www.programiz.com/c-programming/online-compiler/
https://godbolt.org/
https://cppinsights.io/
Python
https://www.programiz.com/python-programming/online-compiler/
https://www.online-python.com
https://www.online-python.com/?utm_content=cmp-true
https://www.w3schools.com/python/python_compiler.asp
https://www.onlinegdb.com/online_python_compiler
https://onecompiler.com/python
https://www.tutorialspoint.com/online_python_compiler.php
https://pythontutor.com/python-compiler.html#mode=edit
https://www.mycompiler.io/online-python-compiler
https://pythontutor.com/visualize.html#mode=edit
https://ide.geeksforgeeks.org/online-python-compiler
https://www.scaler.com/topics/python/online-python-compiler/
https://python.microbit.org/v/3
https://trinket.io/embed/python3/a5bd54189b
Scratch
https://scratch.mit.edu/projects/editor/?tutorial=getStarted
Links to coding tutorials:
https://www.hostinger.com/tutorials/learn-coding-online-for-free
Other tools:
https://coding.tools/
https://webcode.tools/
44 Comments
Tomi Engdahl says:
The hardest part of building software is not coding, it’s requirements
Why replacing programmers with AI won’t be so easy.
https://stackoverflow.blog/2023/12/29/the-hardest-part-of-building-software-is-not-coding-its-requirements/
Tomi Engdahl says:
State of the JavaScript ecosystem in 2023
https://nitor.com/fi/artikkelit/state-of-the-javascript-ecosystem-in-2023?fbclid=IwAR0MT2_fQdGHb8j7gzqy9x-_x_0-C8rIXFoIqScXreTlDfx_QQEKaWsLpnE_aem_AQFZUWmlW3Kc0nmx9m5ZtUmUrakOyp7820-41k5-UIqh0CQgPTWGhSPUNFKuDDq3o71sZ9-26MThTiGicdgS-c5H
Tomi Engdahl says:
How to build a martech stack (which you will also use)
https://nitor.com/fi/artikkelit/how-to-build-a-martech-stack?fbclid=IwAR0MT2_fQdGHb8j7gzqy9x-_x_0-C8rIXFoIqScXreTlDfx_QQEKaWsLpnE_aem_AQFZUWmlW3Kc0nmx9m5ZtUmUrakOyp7820-41k5-UIqh0CQgPTWGhSPUNFKuDDq3o71sZ9-26MThTiGicdgS-c5H
The clock is ticking for marketing leaders as the world prepares for a cookieless future and the rise of emerging technologies around AI-driven marketing and hyper-personalisation. Yet, there is a big gap between aims and execution. Nitor’s Strategist, Eveliina Lakka, walks through different approaches to building your martech stack from a technology perspective.
According to Gartner (2022), organisations typically utilise only 42% of the breadth of their martech stack capabilities. In a market where there were 376 new martech product announcements in 2022 alone, it is easy to get lost in “all things shiny”. To bridge the gap between marketing strategy and execution, we first clarify why martech stack should be high on your agenda, and then walk you through three alternative approaches that can elevate your business.
Tomi Engdahl says:
https://regex101.com/
Tomi Engdahl says:
https://jsfiddle.net/
Tomi Engdahl says:
https://www.freecodecamp.org/news/the-python-decorator-handbook/
Tomi says:
https://www.pythonanywhere.com/?affiliate_id=00535ced
Tomi says:
https://github.com/tomimick/restpie3
RESTPie3 – Python REST API Server Starter Kit
This is a lightweight python3 REST API server that offers essential web service features in a simple package. This is not a framework, just a practical and clean codebase that relies on a few core components that do the job well. Fork and create your own REST API server quickly.
Tomi says:
https://jsonviewer.stack.hu/
https://jsoneditoronline.org/
Tomi Engdahl says:
https://github.com/badele/all-stars
Tomi Engdahl says:
Rust developers concerned about complexity, low usage
The biggest worries for the future of Rust among users are too much complexity and too little usage in the tech industry, the 2023 State of Rust Survey finds.
https://www.infoworld.com/article/0/rust-users-concerned-about-complexity-low-usage.html
Tomi Engdahl says:
OMG. This is the real deal. Bython: Python with braces. Because Python is awesome, but whitespace is awful. Bython is a Python preprosessor which translates curly brackets into indentation. Would you use this? https://pypi.org/project/Bython/
Tomi Engdahl says:
Python Tutor: Visualize code in Python, JavaScript, C, C++, and Java
https://pythontutor.com/visualize.html#mode=edit
Compile and Visualize Python Code
https://pythontherightway.com/compiler/
Tomi Engdahl says:
https://memlayout.com/
Tomi Engdahl says:
https://pythontutor.com/render.html#mode=display
Tomi Engdahl says:
Python Call Graph
Welcome! Python Call Graph is a Python module that creates call graph visualizations for Python applications.
https://pycallgraph.readthedocs.io/en/master/
Features
Support for Python 2.7+ and Python 3.3+.
Static visualizations of the call graph using various tools such as Graphviz and Gephi.
Execute pycallgraph from the command line or import it in your code.
Customisable colors. You can programatically set the colors based on number of calls, time taken, memory usage, etc.
Modules can be visually grouped together.
Easily extendable to create your own output formats.
You can either use the command-line interface for a quick visualization of your Python script, or the pycallgraph module for more fine-grained settings.
The command-line method of running pycallgraph is:
$ pycallgraph graphviz — ./mypythonscript.py
Generating and using a Callgraph, in Python
https://cerfacs.fr/coop/pycallgraph
https://pypi.org/project/pycallgraph2/
https://github.com/osteele/callgraph
Callgraph is a Python package that defines a decorator, and Jupyter magic, to draw dynamic call graphs of Python function calls.
It’s intended for classroom use, but may also be useful for self-guided exploration.
Callgraph uses the Python graphviz package. Python graphviz uses the Graphviz package.
https://stackoverflow.com/questions/13963321/build-a-call-graph-in-python-including-modules-and-functions
https://github.com/zw-normal/pycallgraph
Tomi Engdahl says:
Generate Python Call Graph Online
https://python-cg.streamlit.app/
Usage:
Input your python file content (or github link) or upload your python files. If it’s a github link, it must start with https://github.com/.
click Generate and wait seconds.
You will see the call graph. You can also download it as an interactive html.
Tomi Engdahl says:
Graphviz Visualizer
https://www.devtoolsdaily.com/graphviz/?#v2=N4IgJg9gLiBc4EsDmAnAhgBwBYAIDiOwAOgHY44kRgCmOA2gM5abUC8K1AxlALoDcpUuQYBXAEapMuTgBsRDKNRQB9AAyEh5HAoCeMtgDMEM-WAFktnCDIgpWM5FiipqO81opVajKHsPHTABorGzsAdywERX5NcjR1AFoAPhw0AEYcZNSAJkyUtABmdy0ZNDFqGRxWHCIQAAkKm1rigF9BC1EJdGwcWXlFFQziC3JKGnpdfVYjE2owGJGcMUSUsQyssVyNoticUvLK6tqAdVsZMGbdkNtWMTlqTTaSTQU0FCg81NVi1-fP5eK6X+Owsm0+hUBBXB300hU+1BIZk0YihWQRSOeHSgbw+jGYGDYAFkwAg0ABbCCIhbkdETfFEhgARxEb2oCxaIBaQA
Tomi Engdahl says:
https://stamm-wilbrandt.de/GraphvizFiddle/2.1.2/index.html?1683881820736#digraph%20G%20%7B%20%20rankdir%3DLR%20%20%20size%3D%2210%2C7%22%20%20graph%20%5Bsplines%3Dortho%2C%20nodesep%3D0.8%5D%20%20%20node%20%5Bshape%3Dbox%5D%20%20labelloc%3Dt%20%20label%3D%22determine%20sum%20of%20squares%20for%202467-digit%20prime%5Cnpycg%20callgraph%20-%3E%20Graphviz%22%20%20mods%20%5Blabel%3D%22mods%5Cn%28a%3A%20int%2C%20n%3A%20int%29%5Cn-%3E%20int%22%5D%20%20quos%20%5Blabel%3D%22quos%5Cn%28a%3A%20int%2C%20n%3A%20int%29%5Cn-%3E%20int%22%5D%20%20powmods%20%5Blabel%3D%22powmods%5Cn%28a%3A%20int%2C%20r%3A%20int%2C%20n%3A%20int%29%5Cn-%3E%20int%22%5D%20%20grem%20%5Blabel%3D%22grem%5Cn%28w%3A%20Tuple%5Bint%2C%20int%5D%2C%20z%3A%20Tuple%5Bint%2C%20int%5D%29%5Cn-%3E%20Tuple%5Bint%2C%20int%5D%22%5D%20%20root4m1%20%5Blabel%3D%22root4m1%5Cn%28p%3A%20int%29%5Cn-%3E%20int%22%5D%20%20ggcd%20%5Blabel%3D%22ggcd%5Cn%28w%3A%20Tuple%5Bint%2C%20int%5D%2C%20z%3A%20Tuple%5Bint%2C%20int%5D%29%5Cn-%3E%20Tuple%5Bint%2C%20int%5D%22%5D%20%20sq2%20%5Blabel%3D%22sq2%5Cn%28p%3A%20int%29%5Cn-%3E%20Tuple%5Bint%2C%20int%5D%22%5D%20%20sq2%20-%3E%20%7Bggcd%2C%20root4m1%7D%20%20powmods%20-%3E%20mods%20%20quos%20-%3E%20mods%20%20grem%20-%3E%20quos%20%20ggcd%20-%3E%20grem%20%20root4m1%20-%3E%20%7Bmods%2C%20powmods%7D%7D
Tomi Engdahl says:
https://forums.raspberrypi.com/viewtopic.php?t=351378
https://www.freshports.org/devel/py-pycallgraph
Tomi Engdahl says:
Online Python to C Converter
output programming language logo
https://www.codeconvert.ai/python-to-c-converter
Tomi Engdahl says:
Python to C++ converter
https://www.javainuse.com/py2cpp
Python is an interpreted, object-oriented, high-level programming language with dynamic semantics. Online tool to convert Python to C++.
Tomi Engdahl says:
Can you use AI to code?
There are several advantages to using an AI code generator, and it can help developers realize their full potential. The following are some of the main benefits and prospective uses of this ground-breaking tool: The main advantage of AI code generation is the potential to generate code in less time.
https://www.analyticsvidhya.com/blog/2023/08/ai-code-generator/
Tomi Engdahl says:
ChatGPT excels in assisting with specific coding tasks or routines, rather than building complete applications from scratch.22.2.2024
https://www.zdnet.com/article/how-to-use-chatgpt-to-write-code/
Tomi Engdahl says:
Will AI replace programmers in 10 years?
The answer is no. In fact, AI will create demand for even more programmers. As someone who has been in the software development field for over four decades, I’ve witnessed numerous predictions about technology making programming jobs obsolete.
AI Won’t Replace Programmers
https://medium.com/the-business-of-ai/ai-wont-replace-programmers-eddf52c1839b
Tomi Engdahl says:
Is GPT-4 good for coding?
On the plus side, GPT-4 can still write, convert or explain code more efficiently than its predecessors. Based on the chart below, GPT-4 has improved substantially compared to GPT-3.5 in coding exams.
https://www.version1.com/openai-gpt-4-review/
Tomi Engdahl says:
Can we try GPT-4 for free?
The easiest and fastest way to use GPT-4 without paying a subscription is through Microsoft Copilot. Thanks to Microsoft’s exclusive partnership with OpenAI, the company’s AI chatbot assistant is based on the same model as OpenAi’s most advanced product.16.2.2024
https://emag.directindustry.com/2024/02/16/how-to-use-chatgpt-4-for-free/
Tomi Engdahl says:
Is it worth buying GPT-4?
GPT-4 is not only more powerful than GPT-3.5, but it’s also multimodal, meaning it’s capable of analyzing text, images, and voice. For instance, GPT-4 can accept an image as part of a prompt and provide an accurate text response, generate images, and be spoken to and then respond using its voice.
https://www.zdnet.com/article/chatgpt-vs-chatgpt-plus-is-it-worth-the-subscription-fee/
Tomi Engdahl says:
https://www.codeconvert.ai/python-to-c-converter
Tomi Engdahl says:
https://github.com/jagv091205/Python_to_C_converter
https://people.duke.edu/~ccc14/sta-663/FromPythonToC.html
Tomi Engdahl says:
CodeConvert AI
Effortlessly convert code across 25+ languages with AI
https://softgist.com/tools/codeconvert-ai
CodeConvert AI is an online tool that simplifies converting code between different programming languages. It aims to save developers hours that would otherwise be spent learning a new language or manually rewriting code.
Key Features
Broad Language Support: Convert code across 25+ programming languages such as C++, Golang, Java, JavaScript, Python, and more.
User-Friendly Interface: The tool offers a straightforward process, making it accessible even for those new to programming.
No Setup Required: No need to download or install any software. Simply paste your code and click a button to convert it to your desired language.
hat Sets CodeConvert AI Apart
Here are some advantages of CodeConvert AI compared to other AI-driven code translators like ZZZ Code AI and AI Code Converter:
Extensive Language Support: Unlike competitors like ZZZ Code AI and AI Code Converter, CodeConvert AI supports a wide array of 25+ programming languages.
Syntax Highlighting: CodeConvert AI features syntax highlighting, which makes it easier to read and understand the converted code, a feature not commonly found in all competitors.
Error Handling: The tool provides informative error messages to guide users through any issues that may arise during the conversion process, enhancing user experience.
https://www.codeconvert.ai/python-to-c-converter
https://www.codeconvert.ai/pricing
Tomi Engdahl says:
https://zzzcode.ai/
Tomi Engdahl says:
https://zzzcode.ai/python/code-explain
Tomi Engdahl says:
https://theresanaiforthat.com/ai/codeconvert-ai/
Tomi Engdahl says:
Compiling And Running Turbo Pascal In The Browser
https://hackaday.com/2024/04/17/compiling-and-running-turbo-pascal-in-the-browser/
When a friend of [Lawrence Kesteloot] found a stack of 3.5″ floppy disks, they found that it contained Turbo Pascal code which the two of them had worked on back in the Summer of 1989. Amidst reminiscing about the High School days and watching movies on VHS, [Lawrence] sought a way to bring these graphical applications once more back to life. Not finding an easy way to compile Turbo Pascal code on Mac even back in 2013 when he started the project, he ended up writing a Turbo Pascal compiler in JavaScript, as any reasonable person would do in this situation.
https://github.com/lkesteloot/turbopascal
Tomi Engdahl says:
https://lkesteloot.github.io/turbopascal/
Tomi Engdahl says:
Bloomberg:
How GitHub Copilot became responsible for a significant percentage of coding, despite its limitations; Stack Overflow: 54.8% of developers used Copilot in 2023
Microsoft’s AI Copilot Is Starting to Automate the Coding Industry
https://www.bloomberg.com/news/articles/2024-04-17/microsoft-s-ai-copilot-is-starting-to-automate-the-coding-industry
The assistant is saving engineers hundreds of hours a month and is helping GitHub retain its edge over rivals including Amazon and Google.
When software developer Nikolai Avteniev got his hands on a preview version of Microsoft Corp.’s Copilot coding assistant in 2021, he quickly saw the potential.
Developed by Microsoft’s GitHub coding platform and based on a version of OpenAI’s generative artificial intelligence, the assistant wasn’t perfect and sometimes got things wrong. But Avteniev, who works for ticket seller StubHub, was surprised by how ably it finished lines of code with just a few prompts. All he had to do was
Tomi Engdahl says:
https://svelte.dev/
Tomi Engdahl says:
https://jsfiddle.net/
https://regex101.com/
Tomi Engdahl says:
https://permission.site/
Tomi Engdahl says:
JavaScript – Copy to clipboard does not work on Windows machines
https://stackoverflow.com/questions/77884071/javascript-copy-to-clipboard-does-not-work-on-windows-machines
https://medium.com/@bitbug/javascript-how-to-copy-text-to-clipboard-92394f28b045
https://developer.mozilla.org/en-US/docs/Web/API/Clipboard/write
https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts
Tomi Engdahl says:
https://developer.mozilla.org/en-US/docs/Web/API/Clipboard/writeText
https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts
Pages can use feature detection to check whether they are in a secure context or not by using the isSecureContext boolean, which is exposed on the global scope.
js
if (window.isSecureContext) {
// Page is a secure context so service workers are now available
navigator.serviceWorker.register(“/offline-worker.js”).then(() => {
// …
});
}
Tomi Engdahl says:
Ohjelmointia ilman koodia – voi olla myös ammattikoodarin paras apuväline
Kari Ahokas21.4.202412:11OHJELMOINTI
No-code helpottaa ohjelmointia. Koodaamistaitoja ei tarvita, loogista ajattelua kylläkin. Yksi kehitin suoriutuu kuitenkin vain yhdenlaisista sovelluksista.
https://www.tivi.fi/uutiset/ohjelmointia-ilman-koodia-voi-olla-myos-ammattikoodarin-paras-apuvaline/c81bf868-1c22-4aaa-9b0f-a10444a82304
Tomi Engdahl says:
Rina Diane Caballar / IEEE Spectrum:
As CS students experiment with AI coding tools, professors say courses need to focus less on syntax and more on problem solving, design, testing, and debugging — Professors are shifting away from syntax and emphasizing higher-level skills — Generative AI is transforming the software development industry.
AI Copilots Are Changing How Coding Is Taught
Professors are shifting away from syntax and emphasizing higher-level skills
https://spectrum.ieee.org/ai-coding
Generative AI is transforming the software development industry. AI-powered coding tools are assisting programmers in their workflows, while jobs in AI continue to increase. But the shift is also evident in academia—one of the major avenues through which the next generation of software engineers learn how to code.
Computer science students are embracing the technology, using generative AI to help them understand complex concepts, summarize complicated research papers, brainstorm ways to solve a problem, come up with new research directions, and, of course, learn how to code.
“Students are early adopters and have been actively testing these tools,” says Johnny Chang, a teaching assistant at Stanford University pursuing a master’s degree in computer science. He also founded the AI x Education conference in 2023, a virtual gathering of students and educators to discuss the impact of AI on education
So as not to be left behind, educators are also experimenting with generative AI. But they’re grappling with techniques to adopt the technology while still ensuring students learn the foundations of computer science.
“It’s a difficult balancing act,” says Ooi Wei Tsang, an associate professor in the School of Computing at the National University of Singapore. “Given that large language models are evolving rapidly, we are still learning how to do this.”
Less Emphasis on Syntax, More on Problem Solving
The fundamentals and skills themselves are evolving. Most introductory computer science courses focus on code syntax and getting programs to run, and while knowing how to read and write code is still essential, testing and debugging—which aren’t commonly part of the syllabus—now need to be taught more explicitly.
“We’re seeing a little upping of that skill, where students are getting code snippets from generative AI that they need to test for correctness,” says Jeanna Matthews, a professor of computer science at Clarkson University in Potsdam, N.Y.
Another vital expertise is problem decomposition. “This is a skill to know early on because you need to break a large problem into smaller pieces that an LLM can solve,” says Leo Porter, an associate teaching professor of computer science at the University of California, San Diego. “It’s hard to find where in the curriculum that’s taught—maybe in an algorithms or software engineering class, but those are advanced classes. Now, it becomes a priority in introductory classes.”
“Given that large language models are evolving rapidly, we are still learning how to do this.”
—Ooi Wei Tsang, National University of Singapore
As a result, educators are modifying their teaching strategies. “I used to have this singular focus on students writing code that they submit, and then I run test cases on the code to determine what their grade is,” says Daniel Zingaro, an associate professor of computer science at the University of Toronto Mississauga. “This is such a narrow view of what it means to be a software engineer, and I just felt that with generative AI, I’ve managed to overcome that restrictive view.”
Zingaro, who coauthored a book on AI-assisted Python programming with Porter, now has his students work in groups and submit a video explaining how their code works. Through these walk-throughs, he gets a sense of how students use AI to generate code, what they struggle with, and how they approach design, testing, and teamwork.
“It’s an opportunity for me to assess their learning process of the whole software development [life cycle]—not just code,” Zingaro says. “And I feel like my courses have opened up more and they’re much broader than they used to be. I can make students work on larger and more advanced projects.”
Avoiding AI’s Coding Pitfalls
But educators are cautious given an LLM’s tendency to hallucinate. “We need to be teaching students to be skeptical of the results and take ownership of verifying and validating them,” says Matthews.
Matthews adds that generative AI “can short-circuit the learning process of students relying on it too much.” Chang agrees that this overreliance can be a pitfall and advises his fellow students to explore possible solutions to problems by themselves so they don’t lose out on that critical thinking or effective learning process. “We should be making AI a copilot—not the autopilot—for learning,” he says.
Other drawbacks include copyright and bias. “I teach my students about the ethical constraints—that this is a model built off other people’s code and we’d recognize the ownership of that,” Porter says. “We also have to recognize that models are going to represent the bias that’s already in society.”
Adapting to the rise of generative AI involves students and educators working together and learning from each other. For her colleagues, Matthews’s advice is to “try to foster an environment where you encourage students to tell you when and how they’re using these tools. Ultimately, we are preparing our students for the real world, and the real world is shifting, so sticking with what you’ve always done may not be the recipe that best serves students in this transition.”