When you spend most of the day building backend systems and APIs in Python, it's easy to define a "programming language" strictly by what you use to build scalable software. But it got me thinking about LaTeX. Most of us treat LaTeX like HTML just a markup tool for typesetting documents, formatting complex math, and making papers look clean. But under the hood, it's actually built on TeX, which is fully Turing complete. Because it supports variables, loops, conditionals, and custom functions through macros, you could theoretically use LaTeX to compute the Fibonacci sequence or run basic algorithms. It just happens to be a domain specific language heavily optimized for presentation rather than building web servers or database schemas. Technically, it checks the boxes of a programming language. Practically, no one is writing their next microservice in it. Where do you draw the line? Do you consider tools like LaTeX true programming languages, or does the practical day to day application matter more? I am Curious to hear how other engineers categorize this. #LaTeX #ProgrammingLanguages #SoftwareEngineering #ComputerScience #TechDebate #TuringComplete #DeveloperCommunity #MarkupLanguage
Tabassom Entezami’s Post
More Relevant Posts
-
🚀 Turning Spaces into URLs — Another Small Win! Today I solved a basic but practical problem on GeeksforGeeks: URLify a string — replacing spaces with "%20". This is actually something used in real-world applications like web development and URL encoding. It made me realize how even simple DSA problems connect to real use cases. I used a clean and efficient approach with Python’s built-in function: 👉 replace() — simple, readable, and powerful. ✅ All test cases passed ✅ Clean one-line solution ✅ Real-world relevance ⏱ Time Complexity: O(n) 💾 Space Complexity: O(n) Sometimes the best solutions are not the most complex ones, but the most elegant ones. Small steps. Daily progress. Strong foundations 💪 How would you solve this — built-in function or manual approach? 🤔 #python #dsa #coding #programming #geeksforgeeks #strings #webdevelopment #developers #learning #100daysofcode
To view or add a comment, sign in
-
-
A couple of years ago, I wrote that "The Builder pattern is a finite state machine!". A state machine consists of states and transitions between them. As a developer, I want to make illegal states unrepresentable, i.e., users of my API can’t create non-existent transitions. My hypothesis is that only a static typing system allows this at compile-time. Dynamic typing systems rely on runtime validation. In this blog post, I will show that it holds true, with a caveat. If your model has many combinations, you also need generics and other niceties to avoid too much boilerplate code. My exploration will use #Python, #Java, #Kotlin, #Rust, and #Gleam. With that background in mind, let’s move on to the model itself. #builderpattern #finiteStateMachine #illegalState #programming #coding (link in the comments)
To view or add a comment, sign in
-
-
Built a multithreaded file cipher engine in C++17 and Python that handles thousands of files without choking; here's how. I just finished one of the most challenging projects I've built so far. A few weeks ago, I asked myself, what happens if you try to encrypt 10,000 files at once? So I actually tried it. My system nearly crashed. Turns out spawning a new thread for every file is a terrible idea at scale. So I went back to the drawing board and built the Parallel Cipher Engine in C++17 and Python. Honestly had to learn a lot of new concepts along the way: → Thread pools that adapt to your actual CPU cores → Reading files in 64KB chunks instead of byte by byte (genuine game changer) → Building a lightweight stream cipher from scratch → Created UI for better interaction → Managing threads safely without race conditions It's not perfect, and there's a lot I'd do differently now. But seeing it process thousands of files without breaking a sweat, that feeling makes it all worth it. If you're a beginner like me and haven't explored multithreading yet, just start. You'll break things, you'll get frustrated, but you'll learn so much faster than any course. Would love feedback from anyone who's been down this road. Github: https://lnkd.in/dJXCWuPF #CPP #Multithreading #BuildInPublic #SoftwareEngineering #LearningInPublic #Programming
To view or add a comment, sign in
-
You write code. But do you know what actually runs? 💻⚙️ Python. Java. C++. All of it eventually turns into something much closer to raw silicon and electricity. And that layer? Most developers never truly understand it. I’m building something to fix that. Introducing: Silicon to Assembly 🚀 A documentation project that breaks down what really happens inside a CPU — from the lowest level up to assembly language. No shortcuts. No black boxes. No “just accept it”. Just pure logic. As Charles E. Leiserson once said: "If you really wanna understand something, you want to understand it to a level that’s necessary and then one level below that, because it gives you an insight as to why that layer is what it is and what’s really going on." 📌 What makes it different? Explains every term — nothing assumed Completely architecture-independent Focuses on understanding, not memorizing Covers the full journey: → CPU internals → Registers & memory → Instruction flow → Assembly If this sounds interesting: Check it out → https://lnkd.in/gVDr7Jmp 🔗 And if you find it valuable, consider dropping a ⭐ on the repo — it really helps the project grow. Most people code. Very few understand what their code becomes. Be one of them. #AssemblyLanguage #LowLevel #ComputerScience #CPU #OpenSource #LearnInPublic #TechEducation
To view or add a comment, sign in
-
-
What will be the output of this code? a = [[0]*3]*3 a[0][0] = 1 print(a) A) [[1, 0, 0], [0, 0, 0], [0, 0, 0]] B) [[1, 0, 0], [1, 0, 0], [1, 0, 0]] C) Error D) Something else? Drop your answer below 👇 #Python #Programming #Coding #DeveloperLife
To view or add a comment, sign in
-
🚀 Leveling Up Python Skills! If you’re looking to go beyond basic scripts and start building scalable, maintainable, and professional-grade applications, "Python Object-Oriented Programming (Fifth Edition)" is a must-read. This latest edition is fully updated for Python 3.13, covering everything from the core principles of classes and inheritance to complex design patterns and testing strategies. It’s not just about "how" to write code, but "why" certain structures work better for real-world software engineering. Why should you check it out? 🔴 Bridge the Gap: It moves you from functional scripts to sophisticated object-oriented design. 🔴 Stay Current: Covers the latest features in the Python 3.13 ecosystem. 🔴 Practical Insights: Packed with "Expert Insight" that you can apply directly to your daily projects. A huge thank you to the authors Steven F. Lott and Dusty Phillips for sharing their deep expertise, and to Packt for consistently delivering high-quality resources for the developer community. 🚀 Time to dive deep into these chapters! 💻 Special thank you Vinishka Kalra ☀️ #Python #ObjectOrientedProgramming #SoftwareEngineering #Coding #Packt #TechLearning #Python313 #Developers #ProgrammingBooks #Packt
To view or add a comment, sign in
-
-
Writing code that works is one thing but designing something that’s easy to extend and doesn’t break as it grows is a different challenge. Lately, I’ve been thinking more about what actually makes object-oriented design effective not just functional. Especially when building systems in Python that need to handle complexity. I built a turn based card game system in Python to focus on that using object oriented programming to managing state, interactions, and edge cases through clean class design. What stood out to me was how much the structure of code impacts its ability to handle complexity. Designing components that interact cleanly and behave correctly across different scenarios made me realise how important good OOP design really is. Through this Python based project, I was able to: - Design a modular class structure to manage system state and interactions - Implement clear separation of responsibilities across components - Handle edge cases and ensure robustness - Build logic that consistently passes all test scenarios This has pushed me to explore object-oriented programming in Python more intentionally, focusing on building systems that are maintainable and scalable. I’ve shared the project on GitHub for anyone interested in trying out themselves: https://lnkd.in/gV2bmvMS #SoftwareEngineering #Python #ObjectOrientedProgramming #StudentProject #Tech
To view or add a comment, sign in
-
Scoping is a fundamental concept in any programming language, continuing the series I have tried to cover some basics of scope. Read “Js scopes“ by Utkarsh Sahay on Medium: https://lnkd.in/gC2Q8EVh
To view or add a comment, sign in
-
𝗠𝗼𝘀𝘁 𝗽𝗲𝗼𝗽𝗹𝗲 𝗹𝗲𝗮𝗿𝗻 𝗣𝘆𝘁𝗵𝗼𝗻... But very few actually master it. The reason? They focus on syntax, not structure. If you want to move from beginner to advanced, you need to follow a clear path. Here’s a simple roadmap I’ve been following: 🔹 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀 Build strong logic with reusable code 🔹 𝗢𝗢𝗣 𝗙𝘂𝗻𝗱𝗮𝗺𝗲𝗻𝘁𝗮𝗹𝘀 Start thinking in systems, not just scripts 🔹 𝗢𝗢𝗣 𝗣𝗿𝗶𝗻𝗰𝗶𝗽𝗹𝗲𝘀 Encapsulation, Inheritance, Polymorphism, Abstraction 🔹 𝗘𝗿𝗿𝗼𝗿 𝗛𝗮𝗻𝗱𝗹𝗶𝗻𝗴 Write code that doesn’t break in real-world scenarios 🔹 𝗙𝗶𝗹𝗲 𝗛𝗮𝗻𝗱𝗹𝗶𝗻𝗴 Work with real data and build practical applications Most developers stop at basics. But real growth starts when you go deeper. 𝗠𝗮𝘀𝘁𝗲𝗿 𝘁𝗵𝗲𝘀𝗲 𝟱 𝘀𝘁𝗮𝗴𝗲𝘀, 𝗮𝗻𝗱 𝘆𝗼𝘂 𝘄𝗼𝗻’𝘁 𝗷𝘂𝘀𝘁 𝘄𝗿𝗶𝘁𝗲 𝗰𝗼𝗱𝗲 — 𝘆𝗼𝘂’𝗹𝗹 𝗯𝘂𝗶𝗹𝗱 𝘀𝘆𝘀𝘁𝗲𝗺𝘀. #Python #Programming #Developers #Coding #SoftwareEngineering #LearnPython
To view or add a comment, sign in
-
-
What are “Dependencies” in Programming? (Simple Explanation) When you build a software project, you don’t write everything from scratch. Instead, you rely on pre-built tools and libraries created by other developers these are called dependencies. Definition: Dependencies are external packages your project needs to run. Example (Python): If your code includes: from fastapi import FastAPI Then your project depends on FastAPI to work. Think of it like building a car: You don’t manufacture every part yourself. You use engines, tires, and components made by others. Those parts are your dependencies. How we use them: We install dependencies using tools like pip, and often list them in a requirements.txt file so others can easily run the same project. Why they matter: Save development time Provide powerful features out of the box Help standardize projects In short: Your project = Your code + Dependencies + Configuration Mastering dependencies is one of the first steps toward building real, production-ready applications. #programming #python #softwaredevelopment #webdevelopment #learning
To view or add a comment, sign in
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development