ChatGPT macOS App Stuck on Logo? Here’s the Fix
If your ChatGPT desktop app on macOS opens to nothing but the logo in the center—and never loads—you’re not alone. I ran into this issue myself, and the usual fixes didn’t work at first. Here’s what I tried, what failed, and the solution that finally fixed it. The Problem After launching the ChatGPT macOS app: The window opens normally Only the ChatGPT logo appears The app never loads the interface No error messages are shown What Didn’t Work Before finding the solution, I tried the obvious fixes: ...
Ada on MacOS
Work in Progress, but the important tips are already included! Bulid Toolchains You’ll need basic build tools such as gprbuild, gprmake, and those are distributed with GCC. On Apple silicon you should use simonjwright/distributing-gcc. Download release with the name aarch64. Follow the wiki. Bug basically you’ll do Right Click the downloaded file to install Add the path /opt/gcc-VERSION-aarch64/bin to $PATH Then, you can check the installation with $ which gprbuild. Output should show the location of your gcc(default: /opt/gcc-VERSION-aarch64/bin). ...
Git Tips
If you’ve followed Confusing git terminology, follow this link. 헷갈리는 깃 용어 정리 한글 번역을 찾아 오셨다면, 이 링크를 참조하시기 바랍니다. My 2¢ while using Git. Pull If you face the error below, when you do $git pull There is no tracking information for the current branch. Please specify which branch you want to merge with. See git-pull(1) for details git pull <remote> <branch> If you wish to set tracking information for this branch you can do so with: git branch --set-upstream develop origin/<branch> Reset the upstream with below ...
MacOS Tips
My 2¢ while using MacBook Pro. Safari Related Developer’s Tool Webpage inspector also works on Safari(see: “Apple Developer”) Open Safari > Settings > Advanced > Enable Show fatures for web developers checkbox [MAYBE] Restart Safari OPT + CMD + i to open inspector Homepage to Favorites If you want to use New Tab Page as Home Page, you can go to Settings, Home Page and enter favorites://. Then you can go to New Tab Page on any webpage, with shortcut below. ...
Gentoo Linux Binary Packages
Preface As stated in the Handbook, as of December 2023, Gentoo officially supports installing binary packages. Following this update, I installed a new Gentoo machine on a VPS, and this post summarizes how to use binary packages along the way. binrepos.conf In addition to /etc/portage/repos.conf/gentoo.conf, we now write /etc/portage/binrepos.conf/gentoo.conf for binary packages. (This example uses the KAIST mirror.) [binhost] priority = 9999 sync-uri = http://ftp.kaist.ac.kr/gentoo/releases/amd64/binpackages/17.1/x86-64/ Make binary default If you want binary packages to be installed by default, add the following setting to /etc/portage/make.conf. ...
Emacs Config
My not so Extremely Minimal Alt + Ctrl + Shift. Moved to Modular Structure from Literate Org-Mode config This post doesn’t strictly follow the most recent version(Updated: 2024-04-05). That’s available on Github. (Prefer Built-in packages over 3rd Party ones.) JEMACS Emacs really does stand for “Escape-Meta-Alt-Control-Shift”, and not “Editing Macros”, as you may have heard from other disreputable sources (like the Emacs author). — The Gnus Newsreader Manual > 12.7.1 Keystrokes BTW, I prefer all headings fall nicely under the main & top node, so the H1. ...
Self-Taught Computer Science Curriculum
This is a list I put together for my own studies. So if you have any questions about the curricula, please direct them here. At Least Must study at least these two books. Computer Systems: A Programmer’s Perspective Designing Data-Intensive Applications Programming SICP (Structure and Interpretation of Computer Programs) Course: Brian Harvey’s Berkeley CS 61A Architecture CS:APP (Computer Systems :A Programmer’s Perspective) Course: Berkeley CS 61C Algorithms the Algorithm Design Manual Course: Steven Skiena’s lectures (also recommended) How to Solve It, Polya, Conway Math Mathematics for Computer Science Course: Tom Leighton’s MIT 6.042J Operating Systems OS:TEP (Operating Systems: Three Easy Pieces) Course: Berkeley CS 162 Network CN:TDA (Computer Network: a Top Down Approach) Course: Stanford CS 144 Database Readings in Database Systems Course: Joe Hellerstein’s Berkeley CS 186 Languages & Compilers Crafting Interpreters Course: Alex Aiken’s course on edX (also recommended) Compilers: Principles, Techniques & Tools, commonly called the Dragon Book Distributed Systems Designing Data-Intensive Applications by Martin Kleppmann Course: MIT 6.824 (also recommended) Maarten van Steen and Andrew Tanenbaum’s Distributed Systems, 3rd Edition
Self-Taught Mathematics Curriculum
This is a list I put together for my own studies. So if you have any questions about the curricula, please direct them here. Start with Algebra Pre-Algebra covers ‘natural numbers, integers, fractions, decimals, percentages, real numbers, linear equations, basic geometry, and graphs’, which you would ‘normally’ have learned in secondary school, so I consider it an optional step. Pre-Algebra, Nichols Elementary Algebra, Sullivan, Struve, Mazzarella or with Discrete Math Pick one of below, but 2-4 are really hard. I would take 1 & 2. ...
Self-Taught Physics Curriculum
This is a list I put together for my own studies. So if you have any questions about the curricula, please direct them here (original) or here (updated). Before You Start Getting Inspired The First Three Minutes by Steven Weinberg (Level: Easy). An account of the Big Bang by one of the most brilliant physicists of all time. The Character of Physical Law by Richard Feynman (Level: Easy). A brilliant, inspiring little book on the laws of nature. The Particle Odyssey by Frank Close (Level: Easy). A brilliant popular introduction to particle physics and its history, beautifully illustrated with amazing figures and photographs. (Unfortunately it’s a bit difficult to find online right now, but if you find a copy, you should buy it ASAP!) Black Holes and Time Warps by Kip Thorne (Level: Easy/Medium). My absolute favorite popular introduction to general relativity. The Theoretical Minimum by Leonard Susskind and George Hrabovsky (Level: Medium). A solid introduction to classical mechanics. Is best understood around level 5 in the undergraduate curriculum. The Feynman Lectures on Physics (Boxed Set) and Feynman Lectures on Physics (Kindle Edition) (Level: Medium). Feynman’s Lectures are essential readings for everyone interested in physics, and you’ll find a copy on the bookshelf of every amateur and professional physicist. These lectures are what got me into physics: my astronomy professor told me to read them and see if I liked physics - they changed my life! They are somewhat difficult to understand if you are just getting started, but they will make more and more sense by the time you reach levels 5 and 6 in the undergraduate curriculum. Deep Down Things: The Breathtaking Beauty of Particle Physics by Bruce Schumm (Level: Difficult). The very best popular book about particle physics — it clearly explains the most difficult concepts without resorting to speculation. (I had the honor of working with Bruce on a search for supersymmetry at the ATLAS detector.) This book is a great read while you are starting level 7 in the undergraduate curriculum. Mathematics Why Math? by R.D. Driver Undergraduate Introduction to Mechanics University Physics with Modern Physics by Young and Freedman (essential). Work through all of the “Mechanics” chapters (in my edition, these are chapters 1-14). This is the best introductory book I’ve found, and you can use it when you learn electrostatics and modern physics, too. It does a great job of introducing the relevant mathematics, but you’ll need to be learning calculus alongside it. There are plenty of great example problems to work through, and the solutions are easy to find online (though you can also buy a Student Solutions Manual). Please note that you don’t need to spend $250 on the new edition — Amazon has lots of copies of the 12th edition, the 13th edition, and the 14th edition that contain the same material. You’ll need to learn calculus while working through University Physics. My favorite introductory calculus book is Thomas’ Calculus (you can also use the earlier editions), with Stewart’s Calculus(older edition here) coming in as a close second. Work through each chapter, and make sure you can solve problems at the end of each chapter before continuing to the next. Electrostatics Keep working through the calculus textbooks (Thomas or Stewart) while you work through the basics of electrostatics, but you should finish them by the time you finish the electromagnetism chapters in University Physics. You absolutely must understand the basics of calculus before you move on to the other topics in physics. ...
The Righteous Keyboard Layout
🔧 Back to the Roots Those of you who, like me, care about where things come from probably already know this: the reason Bill Joy’s vi uses h, j, k, l as arrow keys, the reason esc is used to switch modes, and especially the reason Unix-like systems started abbreviating the home directory as ~ all trace back to the ADM-3A keyboard. That’s because this is the keyboard Bill Joy was using while he developed vi. ...
How to Type Korean on Linux
I know fcitx, scim, and others work well too, but I’ve been using ibus ever since I first started using Linux, so this guide is based on ibus. Before We Begin (1) If You Use Gnome Gnome is now developed with ibus integrated. On most distributions, if you use the Gnome desktop environment, you can do the steps below through the Settings app. Check the Region & Language options! (2) Characters Show Up as Boxes? When Korean characters on a web page show up as boxes, regardless of input, the cause is the font. Fix it by installing a font that can display Hangul, for example noto-fonts-cjk. ...
The Grand Unified Settings Theory
the Grand Unified Settings Theory This isn’t an explanation of any particular distribution’s features but my opinions; all my opinions on various programs are collected here. Gentoo + Dwm 😊 (I run dwm/st/dmenu with nothing but source edits, no patchez) Criteria for Preference 0. Documentation Basically, and personally, my broad preferences come down to how well something is documented. For example, For distributions, the old Gentoo wiki, the current Arch wiki For window managers, Xmonad For terminals, kitty, which even has separate documentation just for its config For color themes, Dracula or Nord I prefer things that are well documented like these. ...
How to Set a Proper Password
How to set a proper password Preface People who are interested in cybersecurity or who work in development probably already know this, but I’m writing it because so many others seem to either misunderstand it or not care. Below, for ease of understanding, I describe the estimated time to ‘hack’ or ‘guess’ a password, but strictly speaking it isn’t ‘hacking’ in itself. It’s ‘the estimated time it would take to find the right answer when the only goal is to find the password’. ...
Managing Dotfiles with Stow
Preface This post walks through ways to manage dotfiles in stages: manually, with Git, with symbolic links, and with GNU stow. Dotfiles On Unix-related systems (Unix, BSD, Linux, etc.), putting a . in front of a file name makes it a hidden file that isn’t shown by plain ls. Taking advantage of this, plain text files containing various program settings have traditionally been named with a leading .. For example, suppose that while building a program called Hello, ...
GPG from the First Step
Preface As with the Arch Linux installation guide, my basic criterion for deciding whether to write a new post is ‘was this actually hard for me to learn?’. Writing about things that already have plenty of good guides in English or Korean, things I had no trouble learning on my own and that people after me can easily learn too, would be nothing more than showing off, along the lines of ’look at all the cool stuff I know’. ...
Types of Linux Distributions
A Little History In 1991, Linus Torvalds announced ‘Linux Kernel, ver.0.01’. It then incorporated the utilities of Richard Stallman’s ‘GNU (GNU is Not Unix)’ and established itself as a true operating system (OS). In 1991, H. J. Lu’s ‘Boot-Root’ was born as disk images that included the Linux kernel. To make up for the difficult installation process and limited package management of the very early days (1991–92), ‘SLS (Softlanding Linux System)’ appeared. It reportedly included a graphical environment via the X Window System. It can be considered the first appearance of the distribution format that continues to this day. ...
A History of Unix
Preface If you aren’t particularly curious about the history of UNIX, you can jump straight to ‘Types of Linux Distributions’. UNIX To explain the history of UNIX (hereafter ‘Unix’), we have to go back to the mid-1960s. At the time, MIT, AT&T’s Bell Labs, and GE (General Electric) were working on an experimental time-sharing operating system called Multics (hereafter ‘Multics’) for the GE-645 mainframe (the ancestor of today’s operating systems, where multiple simultaneous users and multitasking are taken for granted). Disappointed by the size and complexity of Multics, Bell Labs gradually pulled out of the research, but Ken Thompson, Dennis Ritchie, Doug McIlroy, and Joe Ossanna, who remained interested until the end, did not. Judging that the project had simply been ahead of its time, the four wanted to keep experimenting on a somewhat smaller scale. ...
Arch Linux Installation Guide
Preface I often see people asking why they should use Arch Linux. I can’t objectively and crisply explain it as ’these are the strengths, these are the weaknesses, but this is what makes it attractive’ either (of course, the strengths and appeal I feel are clear to me, but they’re very subjective). What I do know clearly, and can share with you, is that ‘installing Arch Linux isn’t nearly as bewilderingly hard as it seems’. ...
Gentoo Linux Installation Guide
Preface This Gentoo Linux installation guide has completely changed direction. It’s now meant for people already familiar with the installation, for when consulting the Handbook is a hassle. If you’re new to Gentoo Linux or not yet comfortable with Linux, please refer to the Handbook. As of December 2023, Gentoo officially supports binary packages. I’ve written a separate post on how to install binary packages. Prerequisite When you need to download a file from your own Git repository, > Github $ wget https://github.com/YOUR_USER_ID/YOUR_REPOSITORY_NAME/raw/main/FILE_DIRECTORY/SOME_FILE > Gitlab $ wget https://gitlab.com/YOUR_USER_ID/YOUR_REPOSITORY_NAME/-/raw/master/FILE_DIRECTORY/SOME_FILE Live USB Gentoo mirrors ...
Updates
Updates 🔥 since 2017/11/01 Looking through it carefully, some records have been lost, which is a shame.. 😭 Date Type Post Description 26/10/10 Structure change - KR & EN Separation 24/12/20 Structure change - Added Kasten 24/06/08 Post edit - Updated English name 24/04/12 Structure change - Changed URLs of Git-related posts and translated posts 24/04/12 New post Git tips - 24/04/04 New post MacOS Tips - 24/01/11 New post Gentoo Linux Binary Packages - 24/01/07 New post Emacs Config - 24/01/05 Server move - Jekyll → Hugo 23/11/03 New post Confusing Git Terminology - 23/10/17 Structure change - Obsidian → Github Pages + Jekyll 23/09/23 Structure change - Switched to Zettelkasten 23/09/22 Server move - Github Pages + Jekyll → Obsidian 23/07/23 Post edit - Fixed every detail that didn’t fit Jekyll 23/07/10 Server move - Notion → Github Pages + Jekyll 23/06/14 Post edit Update Log Removed overly detailed log entries 23/06/12 Post edit External Links Changed to a database 23/06/10 New post Books Started a reading log 23/06/09 Server move - Github Pages + Hugo → Notion 23/06/09 Post edit Update Log Changed to table format 23/04/11 Server move - Notion → Github Pages + Hugo 23/02/12 Account change - Domain: ptrtoj.com / Email: jeon@domain 23/01/30 New post Self-Taught Curricula - 22/12/22 Account change - Domain: jeonality.com / Email: jeon@domain 22/11/26 Account change - Domain: staticintj.com / Email: mail@domain 22/11/17 Structure change - Reorganized content 22/11/17 New post FreeBSD - 22/11/07 New post Personal Formatting Standard Later deleted 22/11/05 New post Korean Input on Linux (Later retitled ‘How to Type Korean’) 22/11/05 New post The Righteous Keyboard Layout - 22/11/05 New post ISO 8601 Later deleted 22/11/02 Structure change - Removed version labels 22/11/02 Post edit Preferred Software List Retitled → ‘Grand Unified Settings Theory’ 22/11/02 New post Link Storage Moved ‘Useful Links’ 22/10/31 New post Version Labels Removed vRolling versions 22/10/30 New post Fedora Later deleted 22/10/18 Structure change - Changed version naming → [vYY.MM.DD] 22/09/06 Post edit Update Log Unified the format of past records too 22/09/05 Post edit Arch Linux Got a ‘Conclusion’ after 5 years 22/09/04 Structure change - Added ‘toggle table of contents’, CSS update 22/09/03 Post edit Update Log Changed year format 22/08/30 Post edit Arch Linux Added systemd-boot 22/07/08 Server move - Finished moving to Notion 22/07/06 Account change - Domain: j.day / Email: a@domain 21/12/03 Post edit Arch Linux Added contributions from 염준영 21/11/26 Structure edit - Revised table of contents - added home content 21/10/26 Structure edit - Wrapped up version 21.10 21/10/23 Server move - Moved servers again 21/10/20 New post Password Wrote the first edition of what is now ‘How to Set a Proper Password’ 21/10/12 Post edit Update Log Changed logging rule → only major updates are logged 21/10/11 Server move - Finished server move 21/10/11 New post Managing Dotfiles with Stow First edition 21/09/18 Post edit Arch Linux Changed to xorg-xwayland 21/09/12 New post Server Status by Domain Later deleted 21/09/09 Post edit GPG Added v2.1-2017.07 update notes → ‘automatic revocation key creation’ issue 21/09/08 Post edit GPG Fixed typos, added acknowledgements 21/09/07 Post edit Arch Linux Applied ibus-hangul changes, added notes on the GUI installer 21/09/07 Post edit GPG Fixed typos, added content, added references, added tables 21/09/07 Post edit Gentoo Linux Rewritten 21/09/06 New post GPG First edition 21/08/20 Post edit Update Log Converted to a table 21/07/20 Post edit Arch Linux Simplified 21/07/05 Post edit Arch Linux Removed/fixed messy whitespace, strikethroughs, etc.; improved formatting 21/06/23 Post edit Arch Linux Changed format, improved readability, reviewed all content 21/06/23 Post edit Gentoo Linux Improved readability 21/06/15 Server move - Created jeon.dev for testing, moved to jeonwh.com 21/03/21 Post edit Arch Linux Added ‘Appendix A - Additional info suggested in comments’ 21/02/19 Structure edit - Reorganized table of contents 21/02/19 Post edit Arch Linux Full update, applied correction requests from comments, refreshed command list 21/02/17 Post edit Gentoo Linux Full update 20/12/06 New post Fast-Paced Multiplayer Translation finished 20/03/15 Post edit Gentoo Linux Full update 20/03/13 Post edit Arch Linux Revised the command list 20/02/26 Structure edit - Changed version notation 20/02/26 Post edit Arch Linux Fixed problems caused by the move to whjeon.com 20/01/03 Post edit Gentoo Linux Fixed typos 19/12/30 Post edit Arch Linux Minor edits 19/12/30 Post edit Gentoo Linux Added notes on genkernel and etc-update 19/12/17 New post Gentoo Vanilla Kernel Guide Translation finished 19/10/19 Post edit Arch Linux pacstrap patch issue → fixed that section 19/08/17 Structure edit - Converted every article from ‘posts’ to ‘pages’ 19/08/06 Structure edit - Revised format 19/08/06 Post edit Arch Linux Fixed ftp mirrors, typos, and changed commands 19/03/30 Structure edit - Full update 19/03/30 Post edit Gentoo Linux Added table of contents, merged material kept on Git 19/03/29 Post edit Arch Linux Updated for the WordPress editor, full revision 19/01/01 Structure edit - WordPress Gutenberg update issue 18/12/03 Post edit Gentoo Linux Added command list 18/11/10 Post edit Gentoo Linux Unified format with ‘Arch Linux Installation Guide’ 18/11/07 Structure edit - Revised main page, changed layout 18/11/06 Post edit Arch Linux Changed version scheme due to website redesign 18/11/06 Post edit Gentoo Linux Full update, added to update log 18/07/25 Post edit Arch Linux Fixed issues related to the pacman-5.1.0 update 18/01/05 Post edit Arch Linux New Year typo and structure fixes 17/12/05 Post edit Arch Linux modesetting issue, removed xf86-video-intel 17/11/17 Post edit Arch Linux Fixed typos, improved readability 17/11/15 Post edit Arch Linux Revised after reinstalling myself 17/11/14 Post edit Arch Linux Revised ‘Before Installing’, added versioning 17/11/13 Post edit Arch Linux Added Appendix B - various settings, Appendix C - command list 17/11/12 Post edit Arch Linux Added ‘How to make a bootable USB’, fixed GDM, added gst-libav 17/11/11 Post edit Arch Linux Added ccache, added makepkg.conf 17/11/11 Post edit Arch Linux Moved and revised the document 17/11/07 New post Arch Linux First edition, restructured, fixed typos, added images 17/11/05 New post Gentoo Linux First edition 17/11/05 Start - withjeon.com
Useful Links
HTTP is the foundation of data communication for the World Wide Web, where hypertext documents include hyperlinks to other resources. → “HTTP - Hypertext Transfer Protocol”, Wikipedia Removed offical manual or document links Only the “What was that useful document I had read. Oh I can’t remember” type of docs are left. Programming How to Design Programs NOTES ON STRUCTURED PROGRAMMING, by Prof. Dr. Edsger W. Dijkstra How did Dennis Ritchie Produce his PhD Thesis? ATypographical Mystery Invited Talk - Guy Steele (Youtube, 2017, ClojureTV) We Really Don’t Know How to Compute! - Gerald Sussman (Youtube, 2011, Strange Loop) Stop Writing Dead Programs - Jack Rusher (Youtube, 2022, Strange Loop) Simple Made Easy - Rich Hickey (Youtube, 2011, ClojureTV, Strange Loop) HOW DO COMMITTEES INVENT? Lambda Calculus Part 1: “Lambda Calculus - Fundamentals of Lambda Calculus & Functional Programming in JavaScript” - Gabriel Lebec (2017, Fullstack Academy) Part 2: “A Flock of Functions: Combinators, Lambda Calculus, & Church Encodings in JS - Part II” - Gabriel Lebec (2017) Compiler Intro to Compiler Network Beej’s Guide to Network Programming Languages Assembly 8085 8085 Online Simulator Basic Tutorial Doc(https://www.hoist-point.com/applesoft_basic_tutorial.htm) Simulator(https://www.calormen.com/jsbasic/) C Beej’s Guide to C Programming C++ C++ By Example Lisp Build Your Own Lisp Etc Build Your Own X ‘69 Apollo source code Fonts : preview programming fonts