Urgent.News

What's breaking now, across thousands of outlets.

Tech

How I Built a Boston Common Shadow Study From a Single Map Selection

The setup Last month I wanted a shadow study of Boston Common without downloading LiDAR, learning a full GIS stack, or asking anyone for a license. I ended up with a rough but useful model built from one rectangle on a map. This is the workflow I used, including the parts that broke. Step 1: Write the question first My first instinct was to make a model of the park. That is not a question. The…

In a single map selection, I created a Boston Common shadow study without needing advanced tools like LiDAR or a full GIS stack. The process began with defining the question: which surrounding blocks cast shade on the southwest lawn at 3 pm in December. This narrowed focus led to a clear bounding box, detail level, and output. The rectangle encompassing the Common plus two blocks in every direction was chosen for its balance between capturing the necessary details and excluding irrelevant streets.

The scale of the rectangle was crucial; a larger box would result in a diagram-like model, while a smaller one might miss important aspects. After the initial pass, I refined the massing to include the pond, paths, and most of the tree line. The camera and sun settings were also critical; a stationary elevated camera was used for consistent comparisons at 9 am, noon, and 3 pm on three dates.

The results were scored by zones such as open lawn, path, playground, and pond edge, rather than focusing on the overall render. The grid consisted of five zones and three hours, yielding fifteen observations per date. In December, four of the five zones were shaded by late afternoon, while in June, none were. This simple method provided a clear answer to my question, outperforming many complex renderings.

However, challenges arose such as the model's inability to accurately represent trees, terrain, reflections, and city-specific shadow standards. For future iterations, I would annotate the site before generating the model, keep each version for comparison, and include the date and hour in the file name for better tracking. Although the outcome was rough, it successfully answered the initial question, a feat not often achieved with more sophisticated tools.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Building Zero-Latency Real-Time Audio & Vision Agents in Pure Python: Sub-10ms VAD, Instant Barge-In & Full-Duplex WebSockets

In 2026, artificial intelligence underwent a fundamental architectural shift: models transitioned from turn-based text request-response interfaces to full-duplex, streaming multimodal perceptual…

  • Sub-10ms voice activity detection (VAD) achieved in pure Python
  • Instant barge-in interrupt stops AI speech output
  • Vision processing uses keyframe sampling and perceptual hash deltas

The text/plain part is not optional

Plenty of sending pipelines generate HTML only, let the library add an empty text part, and move on. It works until a recipient client renders the empty part, or a filter scores the message as…

  • Text part serves as fallback for non-HTML clients
  • Proper formatting maintains readable message appearance
  • Avoid template placeholders in text part

Attachments you should refuse before they reach the parser

Accepting any attachment is a decision to run a parser on bytes a stranger chose. The cheap defences are at the boundary: extension and content-type allowlists, size caps, and a hard limit on the…

  • Refuse attachments from unknown sources to prevent security risks.
  • Trust decoded bytes, not header claims, for accurate file type verification.
  • Enforce caps on decompressed size and file count for archives to avoid disk filling.

More from Tuesday 3 November →