並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 61件

新着順 人気順

simple if else program questions in pythonの検索結果1 - 40 件 / 61件

  • Don't write clean code, write CRISP code — Bitfield Consulting

    I’m sure we’re all in favour of “clean code”, but it’s one of those motherhood-and-apple-pie things that no one can reasonably disagree with. Who wants to write dirty code, unless maybe it’s for a porn site? The problem, of course, is that few of us can agree on what “clean code” means, and how to get there. A rule like “methods should only do one thing”, looks great on a T-shirt, but it’s not so

      Don't write clean code, write CRISP code — Bitfield Consulting
    • OOP: the worst thing that happened to programming

      > BTC: bc1qs0sq7agz5j30qnqz9m60xj4tt8th6aazgw7kxr ETH: 0x1D834755b5e889703930AC9b784CB625B3cd833E USDT(Tron): TPrCq8LxGykQ4as3o1oB8V7x1w2YPU2o5n Ton: UQAtBuFWI3H_LpHfEToil4iYemtfmyzlaJpahM3tFSoxomYQ Doge: D7GMQdKhKC9ymbT9PtcetSFTQjyPRRfkwTdismiss OOP: the worst thing that happened to programming [2/24/2025] In this article, we will try to understand why OOP is the worst thing that happened to prog

        OOP: the worst thing that happened to programming
      • Introducing Ezno

        Ezno is an experimental compiler I have been working on and off for a while. In short, it is a JavaScript compiler featuring checking, correctness and performance for building full-stack (rendering on the client and server) websites. This post is just an overview of some of the features I have been working on which I think are quite cool as well an overview on the project philosophy ;) It is still

          Introducing Ezno
        • Rewriting the Ruby parser

          At Shopify, we have spent the last year writing a new Ruby parser, which we’ve called YARP (Yet Another Ruby Parser). As of the date of this post, YARP can parse a semantically equivalent syntax tree to Ruby 3.3 on every Ruby file in Shopify’s main codebase, GitHub’s main codebase, CRuby, and the 100 most popular gems downloaded from rubygems.org. We recently got approval to merge this work into C

            Rewriting the Ruby parser
          • Prototyping in Rust | corrode Rust Consulting

            Programming is an iterative process. As much as we would like to come up with the perfect solution from the start, it rarely works that way. Good programs often begin as quick prototypes. While many experiments remain prototypes, the best programs can evolve into production code. Whether you’re writing games, CLI tools, or designing library APIs, prototyping helps tremendously in finding the best

              Prototyping in Rust | corrode Rust Consulting
            • High throughput Fizz Buzz

              Fizz Buzz is a common challenge given during interviews. The challenge goes something like this: Write a program that prints the numbers from 1 to n. If a number is divisible by 3, write Fizz instead. If a number is divisible by 5, write Buzz instead. However, if the number is divisible by both 3 and 5, write FizzBuzz instead. The goal of this question is to write a FizzBuzz implementation that go

                High throughput Fizz Buzz
              • Gamedev in Lisp. Part 1: ECS and Metalinguistic Abstraction - cl-fast-ecs by Andrew

                Gamedev in Lisp. Part 1: ECS and Metalinguistic Abstraction In this series of tutorials, we will delve into creating simple 2D games in Common Lisp. The result of the first part will be a development environment setup and a basic simulation displaying a 2D scene with a large number of physical objects. It is assumed that the reader is familiar with some high-level programming language, has a gener

                  Gamedev in Lisp. Part 1: ECS and Metalinguistic Abstraction - cl-fast-ecs by Andrew
                • Cheating is All You Need | Sourcegraph Blog

                  Heya. Sorry for not writing for so long. I’ll make up for it with 3000 pages here. I’m just hopping right now. That’s kinda the only way to get me to blog anymore. I’ve rewritten this post so many times. It’s about AI. But AI is changing so fast that the post is out of date within a few days. So screw it. I’m busting this version out in one sitting. (Spoiler alert: There’s some Sourcegraph stuff a

                    Cheating is All You Need | Sourcegraph Blog
                  • Vibe physics: The AI grad student

                    Can AI do theoretical physics? In this guest post, professor of physics Matthew Schwartz decided to find out by supervising Claude through a real research calculation, start to finish, without ever touching a file himself. His account of what happened is below. SummaryI guided Claude Opus 4.5 through a real theoretical physics calculation, encapsulating the complexity of code and computations behi

                      Vibe physics: The AI grad student
                    • Golang Mini Reference 2022: A Quick Guide to the Modern Go Programming Language (REVIEW COPY)

                      Golang Mini Reference 2022 A Quick Guide to the Modern Go Programming Language (REVIEW COPY) Harry Yoon Version 0.9.0, 2022-08-24 REVIEW COPY This is review copy, not to be shared or distributed to others. Please forward any feedback or comments to the author. • feedback@codingbookspress.com The book is tentatively scheduled to be published on September 14th, 2022. We hope that when the release da

                      • syntaxdesign

                        One of the most recognizable features of a languages is its syntax. What are some of the things about syntax that matter? What questions might you ask if you were creating a syntax for your own language? Motivation A programming language gives us a way structure our thoughts. Each program, has a kind of internal structure, for example: How can we capture this structure? One way is directly, via pi

                        • Recto — a truly 2D language

                          Masato Hagiwara Open in Recto Pad Google Colab Github Recto Pad TL;DR Recto is a 2D programming language that uses nested rectangles as its core syntax, encoding structure and recursion directly in space instead of a linear stream of text. Recto explores new ways to write, parse, and reason about code—and even natural language—spatially. Introduction Open in Recto Pad Virtually all the languages w

                            Recto — a truly 2D language
                          • How to improve Python packaging, or why fourteen tools are at least tw

                            There is an area of Python that many developers have problems with. This is an area that has seen many different solutions pop up over the years, with many different opinions, wars, and attempts to solve it. Many have complained about the packaging ecosystem and tools making their lives harder. Many beginners are confused about virtual environments. But does it have to be this way? Are the current

                            • Solving common problems with Kubernetes

                              I first learned Kubernetes ("k8s" for short) in 2018, when my manager sat me down and said "Cloudflare is migrating to Kubernetes, and you're handling our team's migration." This was slightly terrifying to me, because I was a good programmer and a mediocre engineer. I knew how to write code, but I didn't know how to deploy it, or monitor it in production. My computer science degree had taught me a

                                Solving common problems with Kubernetes
                              • The Quest for Netflix on Asahi Linux | Blog

                                Welcome to my ::'########::'##::::::::'#######:::'######::: :: ##.... ##: ##:::::::'##.... ##:'##... ##:: :: ##:::: ##: ##::::::: ##:::: ##: ##:::..::: :: ########:: ##::::::: ##:::: ##: ##::'####: :: ##.... ##: ##::::::: ##:::: ##: ##::: ##:: :: ##:::: ##: ##::::::: ##:::: ##: ##::: ##:: :: ########:: ########:. #######::. ######::: ::........:::........:::.......::::......:::: CTF writeups, prog

                                • The Go Programming Language and Environment – Communications of the ACM

                                  Go is a programming language created at Google in late 2007 and released as open source in November 2009. Since then, it has operated as a public project, with contributions from thousands of individuals and dozens of companies. Go has become a popular language for building cloud infrastructure: Docker, a Linux container manager, and Kubernetes, a container deployment system, are core cloud techno

                                  • Solving Quantitative Reasoning Problems With Language Models

                                    Solving Quantitative Reasoning Problems with Language Models Aitor Lewkowycz∗, Anders Andreassen†, David Dohan†, Ethan Dyer†, Henryk Michalewski†, Vinay Ramasesh†, Ambrose Slone, Cem Anil, Imanol Schlag, Theo Gutman-Solo, Yuhuai Wu, Behnam Neyshabur∗, Guy Gur-Ari∗, and Vedant Misra∗ Google Research Abstract Language models have achieved remarkable performance on a wide range of tasks that require

                                    • Andrej Karpathy — AGI is still a decade away

                                      The Andrej Karpathy episode. Andrej explains why reinforcement learning is terrible (but everything else is much worse), why model collapse prevents LLMs from learning the way humans do, why AGI will just blend into the previous ~2.5 centuries of 2% GDP growth, why self driving took so long to crack, and what he sees as the future of education. Watch on YouTube; listen on Apple Podcasts or Spotify

                                        Andrej Karpathy — AGI is still a decade away
                                      • Flattening Rust's Learning Curve | corrode Rust Consulting

                                        I see people make the same mistakes over and over again when learning Rust. Here are my thoughts (ordered by importance) on how you can ease the learning process. My goal is to help you save time and frustration. Let Your Guard Down Stop resisting. That’s the most important lesson. Accept that learning Rust requires adopting a completely different mental model than what you’re used to. There are a

                                          Flattening Rust's Learning Curve | corrode Rust Consulting
                                        • Python behind the scenes #13: the GIL and its effects on Python multithreading

                                          As you probably know, the GIL stands for the Global Interpreter Lock, and its job is to make the CPython interpreter thread-safe. The GIL allows only one OS thread to execute Python bytecode at any given time, and the consequence of this is that it's not possible to speed up CPU-intensive Python code by distributing the work among multiple threads. This is, however, not the only negative effect of

                                          • Eliciting Reasoning in Language Models with Cognitive Tools

                                            Eliciting Reasoning in Language Models with Cognitive Tools Brown Ebouky IBM Research - Zurich ETH Zurich Brown.Ebouky@ibm.com Andrea Bartezzaghi IBM Research - Zurich abt@zurich.ibm.com Mattia Rigotti IBM Research - Zurich mrg@zurich.ibm.com Abstract The recent advent of reasoning models like OpenAI’s o1 was met with excited spec- ulation by the AI community about the mechanisms underlying these

                                            • Ordering Movie Credits With Graph Theory

                                              At Endcrawl we're always thinking about the hard work that goes into making film and TV, and how that work translates to on-screen credits. A feature film may involve thousands of people, hundreds of distinct job titles or "roles," and dozens of departments. So there's plenty for a producer to worry about, like: Did we forget or misspell a name? Is this the correct way to credit that role? Do all

                                                Ordering Movie Credits With Graph Theory
                                              • Hacker News folk wisdom on visual programming

                                                I’m a fairly frequent Hacker News lurker, especially when I have some other important task that I’m avoiding. I normally head to the Active page (lots of comments, good for procrastination) and pick a nice long discussion thread to browse. So over time I’ve ended up with a good sense of what topics come up a lot. “The Bay Area is too expensive.” “There are too many JavaScript frameworks.” “Bootcam

                                                  Hacker News folk wisdom on visual programming
                                                • Arti 1.0.0 is released: Our Rust Tor implementation is ready for production use. | Tor Project

                                                  Arti 1.0.0 is released: Our Rust Tor implementation is ready for production use. by nickm | September 2, 2022 Back in 2020, we started work on a new implementation of the Tor protocols in the Rust programming language. Now we believe it's ready for wider use. In this blog post, we'll tell you more about the history of the Arti project, where it is now, and where it will go next. Background: Why Ar

                                                    Arti 1.0.0 is released: Our Rust Tor implementation is ready for production use. | Tor Project
                                                  • August 2021 (version 1.60)

                                                    Update 1.60.1: The update addresses these issues. Update 1.60.2: The update addresses these issues. Downloads: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap Welcome to the August 2021 release of Visual Studio Code. There are many updates in this version that we hope you will like, some of the key highlights include: Automatic language detection - Programming l

                                                      August 2021 (version 1.60)
                                                    • Why We Use Julia, 10 Years Later

                                                      Exactly ten years ago today, we published "Why We Created Julia", introducing the Julia project to the world. At this point, we have moved well past the ambitious goals set out in the original blog post. Julia is now used by hundreds of thousands of people. It is taught at hundreds of universities and entire companies are being formed that build their software stacks on Julia. From personalized me

                                                        Why We Use Julia, 10 Years Later
                                                      • Revisiting "Let's Build a Compiler" - Eli Bendersky's website

                                                        There's an old compiler-building tutorial that has become part of the field's lore: the Let's Build a Compiler series by Jack Crenshaw (published between 1988 and 1995). I ran into it in 2003 and was very impressed, but it's now 2025 and this tutorial is still being mentioned quite often in Hacker News threads. Why is that? Why does a tutorial from 35 years ago, built in Pascal and emitting Motoro

                                                        • Game Bub: open-source FPGA retro emulation handheld

                                                          I’m excited to announce the project I’ve been working on for the last year and a half: Game Bub, an open-source FPGA based retro emulation handheld, with support for Game Boy, Game Boy Color, and Game Boy Advance games. May 2025 Update: Want to buy a prebuilt Game Bub? I’m launching a crowdfunding campaign on Crowd Supply! Sign up to be notified when the campaign goes live. Play Video: Game Bub ca

                                                            Game Bub: open-source FPGA retro emulation handheld
                                                          • How to Write Blog Posts that Developers Read

                                                            I recently spoke to a developer who tried blogging but gave up because nobody was reading his posts. I checked out his blog, and it was immediately obvious why he didn’t have any readers. The developer had interesting insights, but he made so many mistakes in presenting his ideas that he was driving everyone away. The tragedy was that these errors were easy to fix. Once you learn to recognize them

                                                              How to Write Blog Posts that Developers Read
                                                            • Rust, reflection and access rules

                                                              Reflection is something a lot of people wish the Rust language had: It is not hard to stumble across somebody with an interesting use case for it. People want to use it for serialization, GCs, better interop, and so, so much more. If you can think of a task, there is somebody out there wishing they could implement it using reflection. Sadly, it does not look like it is coming any time soon. Still,

                                                              • Expert Generalists

                                                                As computer systems get more sophisticated we've seen a growing trend to value deep specialists. But we've found that our most effective colleagues have a skill in spanning many specialties. We are thus starting to explicitly recognize this as a first-class skill of “Expert Generalist”. We can identify the key characteristics of people with this skill - and thus recruit and promote based on it. We

                                                                  Expert Generalists
                                                                • Technology Trends for 2024

                                                                  This has been a strange year. While we like to talk about how fast technology moves, internet time, and all that, in reality the last major new idea in software architecture was microservices, which dates to roughly 2015. Before that, cloud computing itself took off in roughly 2010 (AWS was founded in 2006); and Agile goes back to 2000 (the Agile Manifesto dates back to 2001, Extreme Programming t

                                                                    Technology Trends for 2024
                                                                  • 2026: The Year of Java in the Terminal - @maxandersen

                                                                    Look, I’m going to say something that might sound crazy to some of you: Java deserves to be better in the terminal. And 2026? That’s going to be the year we fix it! I’ve been watching people get absolutely amazed by AI terminal applications lately. LLM-powered CLI tools that help you write code, answer questions, generate content—all from your terminal. And you know what they’re all written in? Py

                                                                    • Python behind the scenes #11: how the Python import system works

                                                                      If you ask me to name the most misunderstood aspect of Python, I will answer without a second thought: the Python import system. Just remember how many times you used relative imports and got something like ImportError: attempted relative import with no known parent package; or tried to figure out how to structure a project so that all the imports work correctly; or hacked sys.path when you couldn

                                                                      • Laurence Tratt: Retrofitting JIT Compilers into C Interpreters

                                                                        C interpreters are a common language implementation technique and the basis for the reference implementations of languages such as Lua, Ruby, and Python. Unfortunately, C interpreters are slow, especially compared to language implementations powered by JIT compilers. In this post I’m going to show that it is possible to take C interpreters and, by changing a tiny proportion of code, automatically

                                                                        • A Deep Dive into eBPF: Writing an Efficient DNS Monitoring.

                                                                          eBPF / XDP is an in-kernel virtual machine, provides a high-level library, instruction set and an execution environment inside the Linux kernel. It’s used in many Linux kernel subsystems, most prominently networking, tracing, debugging and security. Including to modify the processing of packets in the kernel and also allows the programming of network devices such as SmartNICs. Use cases in eBPF im

                                                                            A Deep Dive into eBPF: Writing an Efficient DNS Monitoring.
                                                                          • May 2023 (version 1.79)

                                                                            Update 1.79.1: The update addresses this security issue. Update 1.79.2: The update addresses these issues. Downloads: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap Welcome to the May 2023 release of Visual Studio Code. There are many updates in this version that we hope you'll like, some of the key highlights include: Read-only mode - Mark specific files and f

                                                                              May 2023 (version 1.79)
                                                                            • From Common Lisp to Julia

                                                                              This post explains my reasoning for migrating from Common Lisp to Julia as my primary programming language, after a few people have asked me to elaborate. This article is the product of my experiences and opinions, and may not reflect your own. Both languages are very well designed, and work well, so I encourage you to do your own research and form your own opinions about which programming languag

                                                                              • cuneicode, and the Future of Text in C

                                                                                Following up from the last post, there is a lot more we need to cover. This was intended to be the post where we talk exclusively about benchmarks and numbers. But, I have unfortunately been perfectly taunted and status-locked, like a monster whose “aggro” was pulled by a tank. The reason, of course, is due to a few folks taking issue with my outright dismissal of the C and C++ APIs (and not showi

                                                                                  cuneicode, and the Future of Text in C
                                                                                • Easy Mode Rust — Llogiq on stuff

                                                                                  This post is based on my RustNationUK ‘24 talk with the same title. The talk video is on youtube, the slides are served from here. Also, here’s the lyrics of the song I introduced the talk with (sung to the tune of Bob Dylan’s “The times, they are a-changin’”): Come gather Rustaceans wherever you roam and admit that our numbers have steadily grown. The community’s awesomeness ain’t set in stone, s