Welcome to Emre Şahin’s digital garden. 🪴

It’s mostly (in)tended for my future self as a technical logbook.

Continuous Developer

Everyone knows software development never finishes. You have to keep up, learn new technologies and fix (or replace) the bugs. I’m developing software since 1996 or its whereabouts. These are mostly tidbits and development journals.

Perpetual Learner

Masochistic Minimalist

Manager

Tool-Junkie

Lazy Scripter

Software Architect

Researcher

These are mostly about my Ph.D. work in building OCR for Ottoman Turkish. They are dated. I may return to work on this some time in the future as the problem seems still open.

Recent Updates

categories

#AI[1] #bits[16] #C++[1] #calendar[1] #CLI[4] #Computer Science[1] #Computer Vision[5] #Cryptography[1] #dart[1] #Data Engineering[1] #Dervaze[4] #Development[11] #devlog[17] #devops[1] #Dialogues[1] #Document Analysis[1] #free software[1] #garden[1] #git[1] #Golang[2] #idea 11-25[1] #learning[2] #Linguistics[2] #Linux[1] #Management[3] #Memory Management[1] #ML[1] #more features for my telegram bot[1] #neovim[1] #NLP[1] #Paleography[1] #Paper Review[2] #Paper Reviews[2] #Personal[1] #poor man's secrets manager with pass[1] #Product Management[1] #Programming[3] #Programming Paradigms[1] #project-management[1] #psychology[1] #publishing[1] #Python[2] #Quotations[1] #R[1] #Rust[6] #Scripting[1] #Scripts[1] #Shell[8] #Software[2] #Software Architecture[2] #Software Design[1] #Software Development[2] #Software Engineering[2] #summary[1] #Testing[1] #til[3] #To Be Tagged[36] #Tools[9] #Typography[1] #Vim[3] #Web[1] #work[1] #writing[1] #Xvc[25]

tags

#add-in[2] #aerc[1] #agile[1] #airmux[1] #Algorithms[2] #alienation[1] #Allen Holub[1] #alphabet[1] #ancient[1] #anemone[1] #anonymous struct[1] #API[1] #apple silicon[1] #approximation[1] #Arabic[1] #arc42[1] #architecture[3] #arrays[1] #automation[2] #awk[1] #backup[1] #bash[1] #Bayesian[1] #binary descriptor[1] #Blake3[1] #blink.cmp[1] #blog[1] #boost[1] #boredom[1] #browsers[1] #burnout[1] #C[1] #c++11[1] #caching[1] #Cairo Genizah[1] #calendar[1] #carapace[1] #Cargo[2] #cargo-geiger[1] #cargo publish[2] #cat[1] #celeste[1] #certificates[1] #character recognition[1] #chatgpt[1] #checklist[1] #CI/CD[2] #clap[7] #clap-complete[5] #clap_complete_nushell[1] #clap-completion[1] #classic CV[2] #classification[2] #Claude[2] #cli[5] #clipboard[1] #Cloud Computing[1] #codecov[1] #colorscheme[1] #ColQwen2[1] #comm[1] #commands[1] #completions[1] #complex numbers[1] #complexity[1] #computer vision[2] #Concurrency[3] #Conditional Compilation[1] #config[1] #Configuration[2] #confy[1] #connected components[1] #constructors[1] #contract[1] #conversion[1] #conversions[1] #copy[1] #coursera[1] #coverage[2] #crates[1] #crates.io[1] #cron[1] #cross compilation[2] #crossbeam[2] #cv[1] #DAISY[1] #dart[3] #data[1] #data pipelines[1] #Data Structures[1] #data-versioning[1] #database[1] #debug[2] #debugging[3] #deep learning[2] #dense matching[1] #dervaze[1] #descriptor[1] #desktop[1] #development[1] #devlog[2] #diagrams[1] #dialog[1] #dictionary search[1] #digital garden[1] #distruptor[1] #doc tests[1] #document processing[1] #documentation[1] #drive[1] #dufs[2] #duplicates[1] #dvc[3] #dynamic completions[2] #ecs[2] #ecs index[1] #ed[1] #editors[1] #elision[1] #emacs[1] #embedded struct[1] #encryption[1] #energy[1] #engineering management[1] #english[1] #espanso[1] #estimates[1] #estimator[1] #eye-tracking[1] #factory[1] #Fashion-MNIST[1] #Feature Flags[2] #filesystem[1] #finite state machines[1] #FREAK[1] #Fred Brooks[2] #futures[1] #Gemini[6] #gh[2] #gh release[1] #gh run[1] #ghostty[1] #git[13] #Git Annex[2] #git-lfs[1] #Github Actions[4] #Github Copilot[1] #Github Search[1] #gitignore[2] #gitoxide[1] #go[1] #golang[1] #goneovim[1] #graphite[1] #graphs[1] #handwriting[1] #handwriting recognition[1] #hashing[1] #Heap[1] #historical documents[1] #history[1] #homebrew[1] #hooks[2] #hugo[1] #i3[1] #IDX[1] #IDX3[1] #ignore[1] #imputation[1] #inboxbot[1] #initialization[1] #integration tests[1] #Iterative.ai[1] #JavaScript[1] #jj[1] #JSON[1] #Jupyter[2] #jupyter-lab[1] #kagi[1] #keyboard[1] #keypoint[1] #knot[1] #knowledge accumulation[1] #lambda[1] #lanyon[1] #Lazygit[1] #lazyvim[1] #legalops[1] #libraries[1] #librclone[1] #libssh2[1] #libssl[1] #line estimation[1] #Linux[4] #literate programming[1] #LLM[1] #LMS[1] #LSP[1] #lua[3] #macos[1] #manpower[1] #map[1] #markdown[2] #Marx[1] #maturin[2] #mdbook[1] #meaning[1] #Memory Management[1] #mermaid[1] #Microsoft Word[2] #midori[1] #mime-types[1] #miniflux[1] #missing data[1] #ml[2] #MLOps[3] #MNIST[1] #motivation[2] #multiprocessing[1] #multithreading[2] #Mythical Man-Month[3] #negotiation[1] #neovim[5] #netlify[1] #netstat[1] #NLP[1] #None[1] #noremap[1] #notify[1] #nushell[12] #Object-Oriented Programming[1] #Office[1] #OnceCell[1] #ONNX[1] #OOP[2] #Open Source[2] #options[1] #org-mode[1] #organization[1] #organizations[1] #ORM[1] #os[1] #Ottoman[5] #Outlook[1] #paleography[1] #paper review[2] #parallel[1] #pass[1] #passwords[1] #paste[1] #Path[2] #path_sync[1] #PathBuf[1] #Performance[1] #perl[1] #PGM[1] #pinecone[1] #plugin[1] #Principle of Locality[1] #Probabilistic Graphical Models[1] #process[1] #processes[1] #productivity[2] #projects[1] #PyO3[1] #pypi[1] #pytest[2] #Python[5] #qdrant[1] #query[1] #rand[1] #random[2] #randomness[1] #rare variable[1] #rclone[5] #rclone alias[1] #recursive[1] #redirection[1] #reflinks[1] #regex[6] #regular expressions[1] #regularization[1] #repr[1] #Representation[1] #requirements[1] #resume[1] #ripgrep[1] #risk[1] #rsync[4] #ruby[1] #Rust[14] #rust-analyzer[1] #rust-fmt[1] #rustmark[1] #s3cmd[1] #s5cmd[1] #sampling[1] #script[2] #scrum[1] #search[2] #secrets[1] #security[1] #select[1] #serde[2] #serde_json[1] #serialization[1] #shell[7] #SIFT[1] #skip_serializing_if[1] #software[1] #Software Architecture[1] #Software Design[1] #software development[1] #Software Engineering[1] #Space Complexity[1] #sparse coding[1] #spell[1] #spelling conversion[1] #ssh[1] #Stack[1] #standard library[1] #state machines[1] #std[1] #storage[2] #str[1] #struct[1] #subcommands[1] #summarizer[1] #summary[1] #TDD[1] #telegram[1] #temporary directory[1] #test[1] #testing[3] #tests[1] #theme[1] #tmux[7] #tools[1] #trace[1] #transcription[2] #transliteration[2] #Tree[2] #trycmd[2] #Turkish[2] #tutorial[1] #undo[1] #unison[1] #unit tests[1] #unsafe_code[1] #UTF-8[1] #uv[1] #variable length arrays[1] #variables[1] #vector database[1] #venv[1] #versioning[1] #video[1] #vimrc[1] #virtualenv[1] #visual encoding[1] #wait_status[1] #watcher[1] #wget[1] #which[1] #workflow[1] #X[1] #xsel[1] #Xvc[25] #xvc aliases[1] #xvc-config[3] #xvc-ecs[1] #xvc file[3] #xvc file list[1] #xvc-pipeline[1] #xvc pipeline step dependency[1] #xvc.py[3] #xvc storage[2] #xvc storage new generic[1] #xvc-test-helper[1] #XvcRoot[1] #xwindow[1] #zettelkasten[2] #zola[1] #zsh[4]