News for hackers. Stuff that matters.

minhmeoke

Re:The Wi-Fi Revolution (2003) on Saturday October 18, 2025 @02:03AM (#45625292)
Router/Access point: Matchbox, eg: TP-Link TL-WR802N (57 × 57 ×18 mm) [6] or GL-Inet GL-MT300N (58 x 58 x 25mm) [7]

WiFi USB Client: Fingernail, eg: Asus USB-AX56 adapter (25.5 x 16 x 9mm) [8]

WiFi Card Client: Postage stamp, eg: Intel Dual-Band Wireless Adapter AC-7260NGW M.2 2230 (22mm x 30mm x 2.4mm) [10]

802.11n Wireless N range: theoretically 230 ft (70 m) range indoors and 820 ft (250m) range outdoors, which is approximately 1 FIFA soccer field's (105 x 68 m) width for indoor range, and 2 soccer fields end-to-end by 3 side-to-side for outdoor range. Newer protocols do not seem to have extended the range of individual radios but rather rely on repeaters or range extender devices to provide additional coverage.

https://www.hummingbirdnetworks.com/articles/what-is-the-dis...

https://en.wikipedia.org/wiki/IEEE_802.11#Protocol

https://publications.fifa.com/de/football-stadiums-guideline...

Some of these are slightly older devices dating from around 2020, but the sizes should generally still be approximately the same in 2025.

Router/Access point: Mobile operating systems like WebOS, Android, and iOS have had hotspot capabilites built-in since around around 2010 (Mobile Hotspot on Palm Pre and Pixi Plus in 2010 [1], Wifi Tethering in Android 2.2 Froyo in 2010 [2], and Personal Hotspot in iOS 4.3 for iPhone 4 and 3GS in 2011 [3]). Today you can configure your phone to become a personal Wifi router with one button press [4], [5].

[1] https://www.cnn.com/2010/TECH/01/07/ces.palm.pre.plus.pixi/i...

https://web.archive.org/web/20101125023042/http://articles.c...

https://archive.is/UD1Dm

[2] https://www.wired.com/2010/05/android-22-froyo-features-usb-...

https://web.archive.org/web/20140707210122/https://www.wired...

https://archive.is/kjH1N

[3] https://www.engadget.com/2011-03-09-ios-4-3-spotlight-person...

https://web.archive.org/web/20251018061108/https://www.engad...

https://archive.is/QBRod

[4] https://support.google.com/android/answer/9059108?hl=en

[5] https://support.apple.com/guide/iphone/share-your-internet-c...

For a discrete router device, TP-Link TL-WR802N (57 × 57 ×18 mm) [6] and GL-Inet GL-MT300N (58 x 58 x 25mm) [7] are matchbox-sized travel router devices that fit into the palm of your hand, cost less than $30 USD, and consume less than 2.75W (they can be run from a basic 5V, 1A USB connection).

[6] https://www.tp-link.com/us/home-networking/wifi-router/tl-wr...

https://web.archive.org/web/20250724184720/https://www.tp-li...

[7] https://www.gl-inet.com/products/gl-mt300n-v2/

https://web.archive.org/web/20250822045920/https://www.gl-in...

Wifi Client: Wifi capabilities are now built into mobile phone, TV, and many camera chipsets, there is no separate card required. If you want a separate WiFi adapter, you can buy a USB adapter that is about the size of a fingernail or 5 small coins stacked together (eg: 5 US pennies, or 5 Euro 1-cent coins), basically take the metal part of a USB-A male connector and extend or extrude it a bit. This Asus USB-AX56 adapter [8] is 25.5 x 16 x 9mm and supports WiFi 6 (802.11ax) with theoretical speeds up to 9.6 Gbps (actual real-world speeds appear closer to 800 Mbps). Streams in Wifi 6 can be up to 160MHz wide via channel bonding of up to 8 adjacent 20 MHz channels, but in practice this is only feasible in locations with low or no interference. Note that wider channels have a reduced effective range and perform poorly at a distance or through obstructions.

[8] https://www.asus.com/networking-iot-servers/adapters/all-ser...

https://web.archive.org/web/20251018061524/https://www.asus....

https://www.wi-fi.org/wi-fi-macphy

Discrete Wifi cards can still be found in some laptop computers (although many Wifi cards are now soldered down), one of the more recent (introduced around 2013 to 2015) and smaller sizes is M.2 2230 (22mm x 30mm x 2.4mm) which is also the form factor for some M.2 PCI-Express SSDs (solid state storage drives, typically flash devices). These are about the size of a postage stamp, weigh around 2.3 grams, and cost around $20 USD or less.

One example is Intel AX210 [9] which supports Wi-Fi 6E, on 3 bands: 2.4 / 5 / 6GHz in a 2x2 configuration (2 TX transmit and 2 RX receive antennas) at speeds of 2.4 Gbps, and also features Bluetooth 5.3.

[9] https://www.intel.com/content/www/us/en/products/sku/204836/...

A popular previous-generation device is Intel Dual-Band Wireless Adapter AC-7260NGW [10] with good support for GNU/Linux, again with a M.2 2230 (22mm x 30mm x 2.4mm) form-factor approximately the size of a postage stamp, supporting Wifi 5 802.11ac with up to 867 Mbps theoretical bandwidth on dual bands in a 2x2 configuration (2 TX transmit and 2 RX receive radios), and 433 Mbps per stream. Channels can be up to 80MHz wide via channel bonding of 4 adjacent 20 MHz channels.

An alternative, earlier form factor was Half Mini-PCI-Express, for example Intel Dual-Band Wirelss Adapter AC-7260HMW [10] at 26.80 x 30 x 2.4 mm.

[10] https://www.mouser.com/datasheet/2/612/dual-band-wireless-ac...

https://web.archive.org/web/20251018061520/https://www.mouse...

If you can install software on the computer and have an Android 11 or newer phone, one way is to use the adb tool from android sdk tools to create a connection over the local wifi network which you can adb push folders over.

# Initial Setup

1. Install Android Platform Tools from: https://developer.android.com/tools/releases/platform-tools#... and verify that you can execute the adb tool.

2. Connect the Android device and the computer to the same Wi-Fi network

3. Also connect the Android device to the computer via USB cable (just for this initial setup)

4. Pair the phone with the computer and enable Wireless debugging as described here: https://developer.android.com/tools/adb#connect-to-a-device-...

# Subsequent usage (does not require USB cable):

5. Toggle the Wireless Debugging quick setting toggle to enable adb connections from your computer to your phone

6. Retrieve the Android device's IP address in Settings → About → Status.

7. On the computer command line type: adb connect ip-address-of-device:5555

8. Push the folder to the Android device: adb push /path/to/folder/to/copy/on/computer /sdcard/path/to/destination/on/android/device

One option is https://github.com/akovacs/uploadserver - it's basically a nicer version of:

    python -m http.server 8000
You first start one server on a desktop/laptop which has the software, and then any client (Android, iOS, PlayStation, Kindle, etc) with a web browser (no need to install any client software) can upload or download files from the web GUI.

You can download prebuilt binaries for x86-64 Linux, Windows, or Mac OS (sorry, no prebuilt binaries for Apple Silicon, but they could be added if there is sufficient demand) from https://github.com/akovacs/uploadserver/releases/ or compile from source using a nightly rust toolchain if you prefer.

Compared to cloud services or `python -m http.server 8000`, this is extremely fast since the server is written in rust, it is fairly simple (compiled and stripped binary is typically less than 3MB), it sends everything over local LAN, it seems to handle large files (over 4GB) fairly well, and you only need to install the software on one machine.

For additional details, please see: https://news.ycombinator.com/item?id=39665095

A useful utility for sharing (upload and download) files over a local LAN that a friend wrote is https://github.com/akovacs/uploadserver - it's basically a nicer version of:

    python -m http.server 8000
You first start one server on a desktop/laptop which has the software, and then any client (Android, iOS, PlayStation, Kindle, etc) with a web browser (no need to install any client software) can upload or download files from it.

You can download prebuilt binaries for x86-64 Linux, Windows 7 or higher, or Mac OS 10.7 Lion or higher (sorry, no prebuilt binaries for Apple Silicon, but they could be added if there is sufficient demand) from https://github.com/akovacs/uploadserver/releases/ or compile from source using a nightly rust toolchain if you prefer.

Start the file server on a desktop machine:

    chmod +x upload_server
    ./upload_server
Determine your machine's IP address using:

    # Linux
    hostname -I

    # Mac
    ifconfig

    # Windows
    ipconfig

Navigate to the server's ip address port 8000 (indicated by the hostname -I command you ran earlier) in the web browser of your choice on any device (no need to download or install any client applications) and upload files using the web UI or directly via curl:

    curl -X POST --data-binary @file_to_upload.txt http://192.168.1.X:8000/uploaded_file.txt
Then download the file to another machine or mobile device either from the web GUI or via a commandline tool:

    curl http://192.168.1.X:8000/uploads/uploaded_file.txt --output downloaded_file.txt
If you don't have a local network, you can setup an adhoc hotspot on any Android 9+ (Settings > Network & internet > Hotspot & tethering https://support.google.com/android/answer/9059108) or iPhone (Settings > Personal Hotspot), then connect to it using any WiFi-enabled device.

Compared to cloud services or `python -m http.server 8000`, this is extremely fast since the server is written in rust, it is fairly simple (compiled and stripped binary is typically less than 3MB), it sends everything over local LAN, it seems to handle large files (over 4GB) fairly well, and you only need to install the software on one machine.

Re:Inkscape Cloud Architect on Sunday October 22, 2023 @04:38PM (#37978881)
I would have to disagree. If you have a larger system, then onboarding, design discussions, and communicating changes will be more efficient if you have a consistent language and up-to-date conceptual understanding of the system compared to having to perform code archaeology and reverse-engineer the previous maintainer's intent each time you want to change something.

https://www.unravelled.dev/how-architecture-diagrams-enable-...

https://news.ycombinator.com/item?id=37222855

Re:Inkscape Cloud Architect on Sunday October 22, 2023 @04:31PM (#37978819)
Very cool, thank you! Creating diagrams using code rather than using drag-and-drop tools might be a good idea for more complex architectures as described here: https://www.ilograph.com/blog/posts/its-time-to-drop-drag-an...

- Can check the textual description of the diagram into version control and track how it changes over time

- Can easily diff 2 versions of the same diagram

- Adding elements to a large existing diagram using WYSIWYG tools can be tricky (eg: you may have to move or reroute existing elements to make enough space)

Another cool idea is to create multiperspective diagrams with different views for different purposes (eg: code structure, deployment, network architecture, security):

- Clarity. By breaking up diagrams into perspectives, diagram authors can bring much more clarity to a system. Individual concerns can be spread out over many perspectives, allowing each the space it needs without interfering with others.

- Extensibility. Multiperspective diagrams share a model, so creating additional perspectives from an existing diagram is incredibly easy, far easier than starting from scratch each time.

- Maintainability. A corollary to the above, individual perspectives can be modified without affecting the others. Diagrams that are easy to maintain get maintained, while diagrams that aren’t fall out of date quickly. Multiperspective diagrams greatly help in the fight to keep documentation up-to-date.

This is a cool demo: https://app.ilograph.com/demo.ilograph.Stack%2520Overflow%25...

For other textual diagramming tools and ideas, please see this thread: https://news.ycombinator.com/item?id=37222855

Disclaimer: I'm not affiliated with Ilograph, just stumbled onto their blog and I think they have a lot of cool ideas.

Re:Localsend: Open-Source Airdrop Alternative on Thursday October 19, 2023 @01:45AM (#37938949)
If you don't have a network connection, you can setup an adhoc hotspot on any Android 9+ (Settings > Network & internet > Hotspot & tethering https://support.google.com/android/answer/9059108) or iPhone (Settings > Personal Hotspot), then connect to it using any WiFi-enabled device.

A useful filesharing utility that a friend wrote is https://github.com/akovacs/uploadserver - it's basically a nicer version of:

    python -m http.server 8000
Download prebuilt binaries for Linux, Windows, Mac OS from https://github.com/akovacs/uploadserver/releases/ or install from source if you prefer

Determine your machine's IP address using:

    # Linux
    hostname -I

    # Mac
    ifconfig

    # Windows
    ipconfig
Start the file server, and then navigate to it using the web browser of your choice on any device connected to the WiFi network (no need for a client application).

    chmod +x upload_server
    ./upload_server
Navigate to the server's ip address (indicated by the hostname -I command you ran earlier) port 8000 in the browser of your choice and upload files using the web UI or directly via curl:

    curl -X POST --data-binary @file_to_upload.txt http://192.168.1.X:8000/uploaded_file.txt
Then download the file to another machine or mobile device either from your web browser or via a commandline tool:

    curl http://192.168.1.X:8000/uploads/uploaded_file.txt --output downloaded_file.txt
The problem with email attachments is that they only support files up to around 25MB, while slack has a 1GB attachment limit, and if you have a slow uplink to the cloud, it could take a while to upload the file.

A friend wrote a faster and more sophisticated version of `python -m http.server 8000` in rust which also supports uploads, you can read about here: https://news.ycombinator.com/item?id=37628347

File transfers are performed over the local network, and therefore should be very fast. If you don't have a network connection, you can just enable a Wifi hotspot on your mobile device and transfer the files over that. There is no need to install any software on the mobile device, you can just use a web browser to browse to a directory that you share over the network.

The problem with email attachments is that it only supports files up to around 25MB, and if you have a slow uplink to the cloud, it could take a while.

A friend wrote a faster and more sophisticated version of `python -m http.server 8000` in rust which also supports uploads, you can read about here: https://news.ycombinator.com/item?id=37628347 File transfers are over the local network, and therefore should be very fast.

Just start the server using:

    python -m http.server 8000
to share a directory over a local network. Then you can point a web browser on another device to port 8000 of the server's IP address to download files. However, this can be slow for larger files.

A friend wrote a faster and more sophisticated version of `python -m http.server 8000` in rust which also supports uploads, you can read about here: https://news.ycombinator.com/item?id=37628347

It would be even better if you didn't have to install any client software at all on the downloading devices, exchange ssh keys, or pass around a password to an account on your system in order to transfer files around your local network.

A useful utility that a friend wrote is https://github.com/akovacs/uploadserver - it's basically a nicer version of:

    python -m http.server 8000
Download prebuilt binaries for Linux, Windows, Mac OS from https://github.com/akovacs/uploadserver/releases/ or install from source if you prefer [1]

Start the file server, and then navigate to it using the web browser of your choice on any device (no need for a client application).

    chmod +x upload_server
    ./upload_server
Navigate to the server's ip address port 8000 in the browser of your choice and upload files using the web UI or directly via curl:

    curl -X POST --data-binary @file_to_upload.txt http://192.168.1.X:8000/uploaded_file.txt
Then download the file to another machine or mobile device either from your web browser or via a commandline tool:

    curl http://192.168.1.X:8000/uploads/uploaded_file.txt --output downloaded_file.txt

[1] Steps for installing from source code:

    # install rust toolchain
    sudo apt install rustc git
    curl https://sh.rustup.rs -sSf | sh
    rustup install nightly
    rustup default nightly
    git clone https://github.com/akovacs/uploadserver
    cd uploadserver
    cargo run --release
Re:Pyobd - a free and open source program for car diagnostics on Monday September 18, 2023 @08:07PM (#37563995)
Cool program, it looks like an easy way to get started with ODB-II, thank you for sharing!

> Currently it only displays live data - no recording and replay is possible. NOTE: The program only displays the engine data, not airbags, ABS and body control systems. Even if your adapter supports that, you will need a more specialized program for that.

If you have more sophisticated requirements, it seems like Wireshark has the ability to stream and record data in real-time: https://www.csselectronics.com/pages/can-bus-to-usb-wireshar... is an ~$70 adapter which shows up as a serial port

Alternatively, https://canable.io/ with USB port seems to support several open source software packages (there are clones of Canable 2.0 Pro available for ~$17 on AliExpress, but hopefully the official version will come back in stock soon):

- Cangaroo (Windows, Linux): Send/receive standard and FD frames, decode messages from DBC files

- SocketCAN (Linux) Native Linux support using slcand

- python-can (Windows, Linux, Mac) Easily interface with the CAN bus using your CANable and Python scripts

Disclaimer: I have no affiliation and have not used either of these, just posting them as possible options.

Re:LANDrop – Drop any files to any devices on your LAN on Thursday August 24, 2023 @09:30PM (#37256768)
A similar utility (much more bare-bones though) that a friend wrote is https://github.com/akovacs/uploadserver

It's basically a nicer version of:

    python -m http.server 8000
Basically just start the file server, and then navigate to it using the web browser of your choice on any device (no need for a client application).

It works on Windows, Mac, and Linux, and therefore should probably work on FreeBSD as well if you can install a Rust toolchain:

    pkg install curl
    pkg install git
    pkg install rust
    git clone https://github.com/akovacs/uploadserver
    cd uploadserver
    cargo run --release
Then navigate to your machine's ip address port 8000 in the browser of your choice and upload files using the web UI or directly via curl:

    curl -X POST --data-binary @file_to_upload.txt http://localhost:8000/file_to_upload.txt
MIT licensed, so please feel free to do whatever you want with it as long as you provide attribution.
Re:Architecture diagrams enable better conversations on Wednesday August 23, 2023 @12:47AM (#37231986)
If you want to create diagrams from textual descriptions, https://kroki.io/ is very versatile and supports several different markup languages including C4.

Alternatively, if you want to stick to ASCII output, https://arthursonzogni.com/Diagon/#Sequence supports several formats (see the dropdown) which can pipe into something like Typogram (https://google.github.io/typograms/) for more beautiful output.

For example, input:

  Renderer -> Browser: BeginNavigation()
  Browser -> Network: URLRequest()
  Browser <- Network: URLResponse()
  Renderer <- Browser: CommitNavigation()
  Renderer -> Browser: DidCommitNavigation()
will output the following sequence diagram:

  .--------.            .-------.     .-------.
  |Renderer|            |Browser|     |Network|
  '--------'            '-------'     '-------'
      |                     |             |    
      |  BeginNavigation()  |             |    
      |-------------------->|             |    
      |                     |             |    
      |                     |URLRequest() |    
      |                     |------------>|    
      |                     |             |    
      |                     |URLResponse()|    
      |                     |<------------|    
      |                     |             |    
      | CommitNavigation()  |             |    
      |<--------------------|             |    
      |                     |             |    
      |DidCommitNavigation()|             |    
      |-------------------->|             |    
  .--------.            .-------.     .-------.
  |Renderer|            |Browser|     |Network|
  '--------'            '-------'     '-------'
and then you can perform further edits using something like https://asciiflow.com/ (web, free) or https://ivanceras.github.io/bob-editor/ (web, free) or https://monodraw.helftone.com/ (Mac only, proprietary) as mentioned in other comments from https://news.ycombinator.com/item?id=37040883.
Re:Typograms: A definition and renderer for ASCII diagrams on Tuesday August 08, 2023 @04:14PM (#37054871)
Thank you, this looks really useful!

One more ASCII-based tool that you could add into your workflow is https://arthursonzogni.com/Diagon/#Sequence which can be used to generate the ASCII that you input into Typogram.

For example, input:

  Renderer -> Browser: BeginNavigation()
  Browser -> Network: URLRequest()
  Browser <- Network: URLResponse()
  Renderer <- Browser: CommitNavigation()
  Renderer -> Browser: DidCommitNavigation()

will output the following sequence diagram:

  .--------.            .-------.     .-------.
  |Renderer|            |Browser|     |Network|
  '--------'            '-------'     '-------'
      |                     |             |    
      |  BeginNavigation()  |             |    
      |-------------------->|             |    
      |                     |             |    
      |                     |URLRequest() |    
      |                     |------------>|    
      |                     |             |    
      |                     |URLResponse()|    
      |                     |<------------|    
      |                     |             |    
      | CommitNavigation()  |             |    
      |<--------------------|             |    
      |                     |             |    
      |DidCommitNavigation()|             |    
      |-------------------->|             |    
  .--------.            .-------.     .-------.
  |Renderer|            |Browser|     |Network|
  '--------'            '-------'     '-------'
and then you can perform further edits using something like https://asciiflow.com/ (web, free) or https://ivanceras.github.io/bob-editor/ (web, free) or https://monodraw.helftone.com/ (Mac only, proprietary) as mentioned in other comments.
Re:Ask HN: Visiting SF on a Budget? on Wednesday July 26, 2023 @01:35PM (#36881587)
Other options are:

- Grab to-go salad box at Whole Foods

- Burritos at Chipotle

Re:Ask HN: Visiting SF on a Budget? on Wednesday July 26, 2023 @01:02PM (#36880991)
For short-term housing, this could be a good option if your budget is ~$1000/month: https://och.berkeley.edu/housing-secondary/price-under+1100/...
Re:Ask HN: Visiting SF on a Budget? on Wednesday July 26, 2023 @12:59PM (#36880952)
Avoid West Oakland (especially near the harbor, avoid anything west of Mandela Parkway or even west of I-980) which is the most dangerous area, as well as Fruitvale and south (eg: San Leandro), and Richmond in the East Bay (the Richmond district in SF is very safe). Alameda island is quite safe, as well as Chinatown and Broadway near the BART stations and Lake Merrit. Berkeley, the Oakland hills and Piedmont area are also safe. But I would still avoid walking around at night in downtown Oakland by myself after 8PM.

In SF, I would avoid the Tenderloin, parts of SOMA from 6th Ave and higher, Mission district below 20th Ave, Excelsior, and Hunter's Point as well as the Bayview neighborhoods. Avoid East Palo Alto in south bay (the rest of Palo Alto is quite safe).

For short-term housing, this could be a good option if your budget is ~$1000/month: Berkeley is generally quite safe https://och.berkeley.edu/housing-secondary/price-under+1100/...

I've used this amazing deck for learning Chinese: https://www.reddit.com/r/ChineseLanguage/comments/7mjmjc/bes...

This looks like a nice Anki deck for reviewing system design concepts: https://github.com/donnemartin/system-design-primer

You might also be interested in Alex Xu's System Design Interview Book.

If you are using Linux-based infrastructure, this list contains some recommended Wifi chipsets. https://github.com/morrownr/USB-WiFi/blob/main/home/The_Shor... In particular, ALFA AWUS036ACHM has a combination of long range and low cost (~$39 USD).

Ubiquity UAP AC LR also has long-range access points with up to 183 meters range for ~$109 USD: https://store.ui.com/products/unifi-ac-lr

If you are more ambitious, you can deploy an OpenWRT BATMAN-based mesh network: https://openwrt.org/docs/guide-user/network/wifi/mesh/batman

I recommend using something that supports OpenWRT out of the box, such as GL-iNet Mango Mini Router GL-MT300N-V2 (~$20 USD refurbished) https://store.gl-inet.com/products/certified-refurbished-pro...

Please only use this information for humanitarian/civilian purposes and not for military objectives. Thank you!

Re:Ask HN: What Are You Working on This Year? on Monday January 02, 2023 @03:56PM (#34223519)
Overall theme: Improving my language skills. My hypothesis is that language is the closest we have to a (lossy) codec for thought. By becoming more cognizant of higher-level concepts and the differences between them, we can reason more effectively and improve our thought and communication processes.

1. Get back into the habit of writing and reviewing evergreen notes (https://notes.andymatuschak.org/Evergreen_notes, An Executable Strategy for Writing: https://notes.andymatuschak.org/z3PBVkZ2SvsAgFXkjHsycBeyS6Cw...) and refining my Zettelkasten knowledgebase and perhaps making it publicly available at some point.

2. Continue refining the precision of my vocabulary and my understanding of the etymology of words. I've realized that I only have a fuzzy grasp of many of the words I use on an everyday basis, yet by becoming more aware of the nuances and subtleties of the usage, origin, and connotations of different terms, I will be able to express myself more accurately and also perhaps better be able to read between the lines of what others say and write.

For example, consider the following definitions:

Compound: composed of two or more separate elements; a mixture.

Complex: consisting of many different and connected parts.

Consequently, a set of buildings which share the same property but are unconnected (for example a mobile home community, or standalone military barracks buildings) should be referred to as a compound. In contrast, if the structure has bridges between the different parts, it should be called a complex.

Also consider:

Sophisticated: (of a machine, system, or technique) developed to a high degree of complexity.

Complicated: consisting of many interconnecting parts or elements, often involving many different and confusing aspects

(from Latin complicat- "folded together", from the verb complicare, from com- "together" + plicare "to fold")

An automobile is a very complex machine, since it consists of thousands of parts and systems. To a mechanic, it might be complicated (as reflected by manuals which are hundreds or thousands of pages long and hours of frustration), while to a user it is sophisticated - capable of doing many things, and yet still easy to use, since the complexity is abstracted away.

These 4 words are seemingly very closely related, yet through careful word selection, we can use them to communicate very different ideas and emotions.

Re:Langoguessr on Monday January 02, 2023 @03:04PM (#34222923)
Thanks, glad that you liked it!

The Megatronix SC620 Six Tone Car Alarm is also fun to watch: https://www.youtube.com/watch?v=xXYc0gtOswQ&list=PLn67ccdhCs...

As well as the a cappella Starships (Nicki Minaj cover) by Mike Tompkins which has a mind-blowing breakdown of how he built up the composition from different vocals at the end: https://youtu.be/vDqHpWY1UD4?t=209

It might also be a good idea to distill transient notes down into evergreen notes to refine and review knowledge: https://notes.andymatuschak.org/Evergreen_notes

This is a great way to refine your ideas before you write and makes it easier to develop the outline as an assembly of different notes that you already have.

An Executable Strategy for Writing: https://notes.andymatuschak.org/z3PBVkZ2SvsAgFXkjHsycBeyS6Cw...

The main insights for me were: - Using notes as a way to organize one's writing (by assembling ideas together into an outline, then filling out the details) to avoid writer's block. - Creating "logs" around concepts that extract useful ideas from ephemeral observations and distill concrete insights over time. - Using an "inbox" of new ideas as a way to focus attention and perform spaced repetition of concepts. - Organizing notes via tags, backlinks, and associations/outlines rather than as a hierarchy. - Incrementally iterating on atomic concept notes to form larger chunks in memory which allows thinking about more complex ideas and recognizing patterns.

Re:Langoguessr on Sunday January 01, 2023 @10:02PM (#34213747)
Wow, this is super fun, and a great sampler of a wide variety of music!

I was curious about the composition of music, therefore a friend and I created/curated frequency-domain visualizations of a variety of music in different languages and interesting sounds using the Welch power spectral density estimation algorithm and Fast Fourier Transform. The visualizations are fun to look at and with some practice you can distinguish the different instruments and vocal tracks in each song.

Chinese: https://www.youtube.com/watch?v=7cWixC3PVP8&list=PLn67ccdhCs...

Russian / Ukrainian: https://www.youtube.com/watch?v=ysqIz8-pRSE&list=PLn67ccdhCs...

Spanish: https://www.youtube.com/watch?v=gsJtqF5hCyE&list=PLn67ccdhCs...

Japanese: https://www.youtube.com/watch?v=sRjxDSIx3Zs&list=PLn67ccdhCs...

Hungarian: https://www.youtube.com/watch?v=UNY3HOnJiUc&list=PLn67ccdhCs...

English: https://www.youtube.com/watch?v=jXCdJ1Lh-48&list=PLn67ccdhCs...

A few other examples which might be interesting:

1. Dialtone using dual-tone multi-frequency signaling and 56K dial-up modem connection: https://www.youtube.com/watch?v=FomWraKuDFg&list=PLn67ccdhCs...

2. Deluxe Multitone Car Alarm: https://www.youtube.com/watch?v=A4uKcvZL7HM&list=PLn67ccdhCs...

3. Composition using only sounds from Windows 98 and XP https://www.youtube.com/watch?v=6lT-jr9sS6Y&list=PLn67ccdhCs...

4. Piano Music (Ballade Pour Adeline): https://www.youtube.com/watch?v=RnAfrEk429w&list=PLn67ccdhCs...

5. Electronic Music Demo: https://www.youtube.com/watch?v=MllJLIX1glg&list=PLn67ccdhCs...

6. Chiptunes (Mortimer's Chip-disko from Supertux): https://www.youtube.com/watch?v=FWHAHPbYc0w&list=PLn67ccdhCs...

Re:Korg makes music with Raspberry Pi on Friday December 09, 2022 @06:56PM (#33928136)
For people interested in this, there are several open source projects which turn Raspberry Pis into a MIDI synthesizers:

MiniDexed: 8 DX7 Tone Generators

- https://github.com/probonopd/MiniDexed

- https://www.youtube.com/watch?v=Z3t94ceMHJo

MT32-Pi: Roland MT-32 emulator

- https://github.com/dwhinham/mt32-pi

- https://www.youtube.com/watch?v=vaSD_wbzJRw

Optionally, buy a PCM5102/PCM5122 or ES9018K2M I2S DAC to improve the output sound quality since the DAC built into the Raspberry Pi is not that great:

https://raspberrypi.stackexchange.com/questions/76188/how-to...

PCM5102 (~$7): https://www.aliexpress.com/wholesale?SearchText=PCM5102+DAC

ES9018K2M (~$12): https://www.aliexpress.com/wholesale?SearchText=es9018k2m+i2...

Re:Winter Is Here: Slowing Down to Fight Sad on Sunday December 04, 2022 @12:47PM (#33855838)
One fairly easy way to reduce Seasonal Affective Disorder (SAD) is to expose yourself to 30 to 45 minutes of sunlight early in the morning by taking a walk outside within an hour after you wake up; this has multiple other health benefits:

- https://selecthealth.org/blog/2020/07/7-health-benefits-of-s...

Getting a lot of sunlight in the morning is also a good way to reduce jetlag by resetting your circadian rhythm to be in sync with your new time zone.

If you live in a climate where you do not have access to sufficient sunlight, one possible alternative is to buy an LED corn bulb (don't use it too late at night, otherwise you won't be able to fall asleep):

- https://blog.plover.com/tech/corn-bulbs.html

- https://meaningness.com/sad-light-lumens

- https://www.benkuhn.net/lux/

You can buy these fairly inexpensively from retailers like AliExpress if you are ok with waiting a month for shipping from China: https://www.aliexpress.com/wholesale?SearchText=corn+bulb

If you live in North America, Japan, Korea, or Taiwan (120V AC), you want an E26 socket lamp, otherwise for 240V AC grids, you should consider E27 socket lamps.

Thanks, this looks like a really useful portal site for getting started in almost any tech-related subject. Bookmarked!
Re:We Should Have Markdown Rendered Websites on Friday November 11, 2022 @12:53AM (#33557715)
For a static document markup language, Djot does a rather good job: https://github.com/jgm/djot

It's very similar yet much fuller-featured than commonmark, with support for definition lists, footnotes, tables, several new kinds of inline formatting (insert, delete, highlight, superscript, subscript), math, smart punctuation, attributes that can be applied to any element, and generic containers for block-level, inline-level, and raw content. In addition, it resolves ambiguities in the commonmark spec and parses in linear time with no backtracking.

Further discussion lower in this thread: https://news.ycombinator.com/item?id=33553293

Quickstart for Markdown users: https://github.com/jgm/djot/blob/main/doc/quickstart-for-mar...

Some more in-depth examples, showing how Djot would be rendered into HTML: https://htmlpreview.github.io/?https://github.com/jgm/djot/b...

Re:We Should Have Markdown Rendered Websites on Thursday November 10, 2022 @04:01PM (#33553293)
For people considering adding Markdown support to web browsers or other publishing tools, please consider adopting Djot instead: https://github.com/jgm/djot

It's very similar to the Markdown syntax we all know and love/hate, but fixes many inconsistencies in the spec, and also makes it possible to parse a document in linear time, with no backtracking. It is also much fuller-featured than commonmark, with support for definition lists, footnotes, tables, several new kinds of inline formatting (insert, delete, highlight, superscript, subscript), math, smart punctuation, attributes that can be applied to any element, and generic containers for block-level, inline-level, and raw content.

Some examples, showing how Djot would be rendered into HTML: https://htmlpreview.github.io/?https://github.com/jgm/djot/b...

Re:Pouring the 200 inch disk at Corning Glass Works on Sunday October 23, 2022 @01:31AM (#33304825)
Additional pictures showing how the 200 inch diameter glass disk was transported across the country by train to Pasadena, CA, polished, and eventually trucked up to the Palomar Observatory:

https://sites.astro.caltech.edu/palomar/media/slideshows/mir...

Click the slideshow and press the left/right arrows to advance the slides or go back.

It seems like they took 11 months to manufacture the 20 mirror, then they spent 11.5 years polishing it down to 14.5 tons in Pasadena... wow! I can't imagine being the crane operator while loading and unloading this thing.

Older »