🚨 NEWS: React Performance con memo lazy Suspense e Profiling — Rendi la tua App Veloce senza Riscrivere Tutto

Ecco i punti chiave in breve:
💡 Il cliente che ti ha commissionato il carrello e-commerce ora ti scrive: «L'app si blocca quando carico il catalogo con 500 prodotti». Tu apri il profiler, vedi un albero di componenti che si ri-rende...

🚀 LINK: https://meteoraweb.com/sviluppo-di-siti-web/react-performance-con-memo-lazy-suspense-e-profiling-rendi-la-tua-app-veloce-senza-riscrivere-tutto

#meMo #reactPerformance #lazy #suspense #profiling

React Performance con memo lazy Suspense e Profiling — Rendi la tua App Veloce senza Riscrivere Tutto

Scopri come ottimizzare le performance di React con memo lazy Suspense e il Profiler dei DevTools. Guida pratica con esempi di codice e strategie di profiling.

Meteora Web

JIT 컴파일된 코드의 성능 분석을 위한 perf/samply 주석 처리 방법

JIT 컴파일러가 생성한 코드를 Linux perf 및 macOS samply에서 식별할 수 있도록 perf map 인터페이스를 구현하는 방법을 설명합니다.

🔗 원문 보기

JIT 컴파일된 코드의 성능 분석을 위한 perf/samply 주석 처리 방법

JIT 컴파일러가 생성한 코드를 Linux perf 및 macOS samply에서 식별할 수 있도록 perf map 인터페이스를 구현하는 방법을 설명합니다.

Ruby-News
My LSM Tree Was Slower Than a B-Tree. Then I Profiled It.

A few weeks ago I wanted to understand how the storage engine inside RocksDB actually works. Not read about it. Build it.

Medium

CBI is thrilled to host "The Problem with Personalization." A talk by UPenn Annenberg School of Comm. Prof. Joseph Turow. June 30th 1pm Central. Via Zoom. Register for this free event at the link.

#media #privacy #surveillance #surveillancecapitalism #profiling #tech #science #ai #artificialintelligence #socialmedia #history #sociology #anthropology #media studies

http://cse.umn.edu/cbi/events/problem-personalization-talk-joseph-turow

The Problem with Personalization: A Talk with Joseph Turow

CBI is pleased to host Joseph Turow, Robert Lewis Shayon Professor of Media Systems & Industries at the Annenberg School for Communication, as he presents a lecture from his recently published book, The Problem with Personalization: How Advertisers Learned to Make and Break Us from Ancient Times to the AI Age.RegisterAbstract (from the The University of Chicago Press): The Problem with Personalization shatters common beliefs about advertising history by showing that individualized ads are not new. Today’s AI-enabled advertisers draw on past aspirations and assumptions about personalization while weaponizing data in unprecedented ways that drive social fragmentation and the disappearance of shared social reality. Informed by interviews with marketing insiders and covering the latest technology advances, Turow accessibly explains how artificial intelligence sifts through our data to tag and target us wherever we go with personalized videos, pictorial billboards, audio messages, and more. A logical next step for advertiser support is tailored entertainment and news, a shift that further destroys the common ground necessary for a functioning democracy.Bio: Joseph Turow is Robert Lewis Shayon Professor of Media Systems & Industries at the Annenberg School for Communication. Turow is an elected Fellow of the International Communication Association and was presented with a Distinguished Scholar Award by the National Communication Association.

College of Science and Engineering
BREAKING: Trump's racist goons pulled the Uruguay World Cup team off their bus and deployed SNIFFER DOGS in a deeply racist show of #profiling!…

Bringing down my ZSH load times from ~3.1s to ~230ms

This year, the amount of time I spend in the terminal has gone significantly up thanks to Claude Code.

Couple of things:

  • I have this insane tendency to close tabs as soon as I’m done with them
  • Over the year, my work computer ZSH dotfiles have gotten extremely bloated
  • I got to a point where I couldn’t tolerate how slow opening a new shell session got. Naturally, I decided to fix it.

    First, I needed to truly understand how slow my zsh was.

    I ran time to get the exact load time of my zsh.

    time zsh -il -c exit

    -i: interactive mode; needed to understand prompts, completions, aliases, etc.
    -l: login mode; needed to load /etc/zprofile and ~/.zprofile, etc.) in addition to .zshrc (I only use .zshrc and a ~/shell_overrides.sh file to load computer specific config)
    -c exit: run the exit command immediately and quit

    These give you a true load time. The result didn’t come as a surprise.

    3.1 seconds load time. It’s a ridiculously high number. No wonder I hated opening a new terminal session so much. For reference, my personal MacBook Air loads my zsh session in ~150ms.

    I wanted to get to that number. At least as close as I could.

    Next, I wanted to profile the full zsh setup. If you know me, I’m a minimalist. I don’t have any fancy setup. So, I knew the slowness was caused by the programs I was using.

    So, I ran a profile. The way you do that in your zsh is by using a the zprof module.

    I added the zmodload zsh/zprof to the top of my .zshrc and zprof to the bottom of my .zshrc.

    zmodload: a zsh command for loading optional zsh modules that aren’t loaded by default, since 99.999999% of times you don’t need ’em.
    zsh/zprof: the profiling module; once loaded, it records the timestamps for every function call.
    zprof: we need to call this at the bottom of .zshrc to dump the report to the stdio.

    Boom! The biggest culprits – eager loading conda and nvm. Between the two, they took up around 2.2s of load time.

    I replaced nvm with fnm and started lazy loading conda.

    Next up, hardcoded brew --prefix to the actual path on my computer to shave off another ~60ms.

    The last one was a hairy one.

    1. fpath is a zsh array variable that lists directories where zsh looks for autoloadable functions, most importantly, completion definition files. It’s the zsh equivalent of PATH, but instead of finding executables, it finds function files.

    2. compinit initializes zsh’s completion system, it’s what enables tab completion. Scans every directory in fpath looking for completion definition files (files named like _git, _npm, _docker, etc.). Builds a completion dump file (~/.zcompdump) that indexes all those completions. On subsequent runs, loads from that cached dump instead of rescanning everything.

    3. If the cache is missed, it builds the cache and it can be expensive. I found that out the hard way.

    In my case, every single time I opened a new terminal session brew kept adding the /opt/homebrew/share/zsh/site-functions to the fpath and compinit hashed the current fpath and compared it to the hash stored in .zcompdump. Because the hash didn’t match, it kept rebuilding it every time.

    To fix this, I made the fpath a unique array, meaning all the dupes would be dropped anytime they get added to it. typeset -U fpath – this essentially solved my problem. This shaved another ~430ms off.

    That’s it, thanks to Ghostty + the new session setup, my new sessions open in ~230ms, which is pretty good.

    And, for the first time in over 14 years, I’ve upgraded my console prompt to something more nicer than the basic text. This is what it looks like:

    Features

    Directory focus

    The path displayed only highlights the current working directly for better focus.

    Error code display

    I added a feature to display the error code from the last run command.

    Execution timer

    If a command takes longer than 4 seconds, the time taken to run the command is displayed on the right side of the terminal (you can see the 6s on in the screenshot).

    The other features include the standard ones like git branch and dirty status. That’s it. It’s still quite lightweight in terms of the features, but I like it that way.

    Anyway, I had a real good time chasing these issues down and fixing them.

    #profiling #shell #zsh

    Pipeline release! nf-core/taxprofiler v2.0.1 - v2.0.1 - Crazy Corgi Patch!
    Highly parallelised multi-taxonomic profiling of shotgun short- and long-read metagenomic data
    Please see the changelog: https://github.com/nf-core/taxprofiler/releases/tag/2.0.1

    #classification #illumina #longreads #metagenomics #microbiome #nanopore #pathogen #profiling #shotgun #taxonomicclassification #taxonomicprofiling #nfcore #openscience #nextflow #bioinformatics

    Release v2.0.1 - Crazy Corgi Patch · nf-core/taxprofiler

    Added #741 Updated to nf-core pipeline template v4.0.2 (added by @sofstam) Fixed #736 Fix MultiQC silently skipping large samtools stats files by increasing log_filesize_limit in MultiQC config ...

    GitHub

    I'm considering posting regularly my "GDPR diary", i.e. an account of all the companies and data brokers I send cease-and-desist communications to, related to unwanted marketing, spam, promotions, etc. It's a whack-a-mole of course, but it has become my guilty hobby (and much easier now with AI tooling). TBH I also consider this a form of civil duty: if everyone does the same, very soon predatory marketing would become too risky to be profitable.

    I send usually 1-2 of these emails (or letters) per week. And so far it's kind of working, i.e. when I home in on a target, usually the annoyances stop.

    Dont feel bad using a firm language and threatening legal action, it's your rights, it's your self-defense against this Satanic practice, and I'd argue its' your duty too!

    #privacy #spam #gdpr #marketing #ad #advertising #profiling #law #society

    @june Sobald bei einer Website cloudflare einmal "die Sicherheit der Verbindung" überprüft, oder "ob ich ein Mensch bin" kommt sie auf meine Sperrliste 🤷‍♂️ für immer 🥸 ich brauche das Internet und solche Lösungen nicht so dringend, als daß ich diesen Nerv dauernd mitmachen müsste.

    #unfucktheinternet #freiesinternet #cloudflare #bot #AnnoyingTechnology #tracking #profiling #offline #digitaldetox

    Irgendwie dachte ich, der dreistellige Bereich sei eine natürliche Grenze 😅 🙈

    #tracking #profiling