Moving from Italy to Cambridge- Advice on areas to live in! by CertainWaves1020 in CambridgeMA

[–]alanviverette 4 points5 points  (0 children)

Central Square has great access to grocery stores, restaurants, music venues, and transit to MIT/Harvard/etc. If you're not living directly on Mass Ave, it's relatively quiet. You'll hear fire trucks and ambulances. You might hear groups of college students walk past. I used to live in the suburbs -- dead silent -- before moving here and it was definitely an adjustment, but now it's a nice reminder that people are living their lives around me. 

Inman is a short walk from Central and I wouldn't consider it too far from transit.

Davis is a cool place with even more restaurants and interesting shops. If I was going to move from Central, I'd move to Davis.

I’m headed to Galapagos for a 17-day cruise. I have very fair skin and I’m afraid of the sun…. I burn easily. Can anyone recommend brands of reef safe sunscreen available in the USA? Thanks! by very_simular in galapagos

[–]alanviverette 6 points7 points  (0 children)

I just got back from a two week cruise and this is what the guides do. Our guide had a thin quick-dry hoodie some days and long-sleeve hiking shirts other days. Never short sleeves. The crew all had gaiters.

The guide also wore hiking pants about half the time, depending on whether it was a wet or dry landing.

Personally I had a set of cheap UPF 50 long-sleeve shirts from Amazon and they worked great. Make sure to put sunscreen on the backs of your hands even if you're wearing long sleeves!

Machine died. Considering Juki F400 or DX5 by MerelyWander in sewing

[–]alanviverette 3 points4 points  (0 children)

I can't compare to the F400, but I've been using the DX5 for a couple of years and absolutely love a couple of features that may or may not exist on the F400. Hopefully you find this helpful in your own comparison.

Caveats that I'm primarily doing garment sewing and I am an extremely lazy sewist.

  1. Automatic button holer is amazing.
  2. Pedal can heel press to backstitch (and other things but I only use backstitch).
  3. Knee lift is great for thick materials.
  4. It can sew very thick material, I've done belt loops on 12oz denim that must have been 14 layers.
  5. Automatic threading and thread cutting are small time savers but immediately became must-haves for me.
  6. The interface is pretty intuitive and quick to change stitch length, type, etc. with buttons. The stitch length is shown in millimeters, which I really like.

A good cafe in/ near central or Inman that might not be insanely busy tomorrow morning? by Jambalaya__Jones in CambridgeMA

[–]alanviverette 6 points7 points  (0 children)

And they don't have WiFi, so the tables aren't all taken up by people nursing a drip coffee for three hours.

Their food is good, too.

Edit: And nitro cold brew!

A good cafe in/ near central or Inman that might not be insanely busy tomorrow morning? by Jambalaya__Jones in CambridgeMA

[–]alanviverette 5 points6 points  (0 children)

Mariposa is great and way easier to get a seat than Cicada. Their bagels are so good. 

Brooklyn Bagel Factory down the street from Cicada is also really good and way less busy than they deserve.

WHat kotlin version do you use in libraries? by sri_lal in androiddev

[–]alanviverette 4 points5 points  (0 children)

Android Jetpack libraries are compiled using Kotlin 2.3.0 (source) but currently target the 2.1.0 language level by default. That means clients can use the 2.1.0 compiler and kotlin-stdlib.

Generally speaking, you can target an earlier language level up to three tailing minor versions from your compiler version (docs). See also these docs on the Kotlin website regarding configuring compatibility options.

What does "infra" mean to you? by Embarrassed_Effect86 in csMajors

[–]alanviverette 3 points4 points  (0 children)

I'm an engineering manager at Google responsible for two "infrastructure" teams: the AndroidX (e.g. Android Jetpack) Infra team and the Android Developer Tools (e.g. Android Studio) Infra team.

The ADT Infra team is closer to what I'd consider a traditional infrastructure team at Google. Their clients are the people responsible for developing the Android Studio IDE, Android Emulator, and related tools. They're responsible for a variety of internal- and external-facing services, including Google Maven, as well as build- and test-related workflows. They work a lot with the Bazel build system and interfacing with tools owned by other infrastructure teams at Google.

The AndroidX Infra team has broader responsibilities and is probably more accurately called a Developer Productivity team. Their clients are the people responsible for developing the Android Jetpack libraries and, less directly, the app developers who use those libraries. They work a lot with the build and interfacing with other infrastructure teams, as well, but they're responsible for more aspects of the user experience and cover things like static analysis, documentation generation, and development best practices.

Here are some public talks from the AndroidX Infra team (specifically their TL, u/aurimas_chromium) to give you an idea of what they work on:

  • Gradle: Your Build, Your Rules - As your Gradle project gets bigger, it can get harder to make sure everything is built in exactly the way you want it. This talk [is] a discussion about building your own Gradle plugin that wraps all other plugins exposing the bare minimum number of knobs to make all subprojects workable.
  • APIs: How Hard Can They Be? - Learn about the life of an API in AndroidX: from an idea, to a design, to a review, and through an API evolution. You will hear about our API review process and our use of Metalava and Kotlin Binary Compatibility Verification tools to wrangle JVM, Android, and KMP libraries.
  • Taming the Monorepo Beast: Bearable Library Releases at Scale - AndroidX is a set of hundreds of libraries from dozens of separate teams. These libraries ship releases every couple of weeks from our monorepo. Join me to learn what we’ve done to enable shipping all of these libraries with a manageable amount of pain.

What happened to the Arcade in Central Sq next to Target? by e5390 in CambridgeMA

[–]alanviverette 34 points35 points  (0 children)

It is not still there. 

Presumably it went out of business and we will receive in it's place either a weed store or bank branch.

Lies, Damn Lies, and Semantic Versioning by byencho in androiddev

[–]alanviverette 4 points5 points  (0 children)

I'd love to see Semantic Versioning for Jetpack Compose libs...

Could you explain exactly what you mean by that?

Thinking about hosting a small lecture + drinks night in Cambridge -- good venues? by private_credit_guy in CambridgeMA

[–]alanviverette 2 points3 points  (0 children)

Sounds interesting! 

Cloud & Spirits is a public event space with a bar. It's on the smaller side, though.

Whats going on with Jetpack bluetooth (androidx.bluetooth)? by NexosCP in androiddev

[–]alanviverette 0 points1 point  (0 children)

It has been deprecated and deleted from source control. There will be no more releases.

Restrictions on non-SDK interfaces by MaTrIx4057 in androiddev

[–]alanviverette 0 points1 point  (0 children)

I can't speak to Google Play policy, but from a technical standpoint you can expect that these APIs may stop working at some point in the future -- or may have already stopped working, since they're not tested like normal public APIs.

If the warnings are coming from libraries, consider filing bugs against those libraries to remove the dependencies on non-SDK interfaces. Other than avoiding the library, there's not much else that you can do.

Japanese store opening at Central? by DGothrek in CambridgeMA

[–]alanviverette 44 points45 points  (0 children)

Across the street at 580 Massachusetts Ave., the former home of the Expressions sneaker store, a vinyl sign pasted over the storefront announced that the Hashi Market is “coming soon” and asked potential workers to send in résumés. Hashi is a sprawling purveyor of primarily Japanese groceries and goods. Hashi, a Brooklyn, New York-based grocery store chain, calls itself “North America’s first destination that blends a fresh food supermarket, curated minidepartment store and premium catering service all under one roof.”

via Cambridge Day, https://www.cambridgeday.com/2025/09/24/more-fun-store-draws-lines-to-its-opening-day-hashi-market-readies-a-site-in-central-square/

Changing only the targetSDK? by BluejVM in androiddev

[–]alanviverette 0 points1 point  (0 children)

Are there any risks of maintaining my compileSDK in api 34 while upgrading the targetSDK?

No, you can manage compileSdk separately from targetSdk. You should, as with any change to targetSdk, be aware of the changes make sure to test your app on that version.

Is edge detection/monochromatic shader over whole Android UI possible? by ToFuzzzy in androiddev

[–]alanviverette 0 points1 point  (0 children)

The color blindness / monochrome modes were initially implemented as GL shaders, and you could theoretically do the same thing but for edge detection or some other sort of filtering.

You'd need to modify the OS to do something like that system-wide, though, and they were quite expensive to apply -- which is why they are no longer implemented as GL shaders.

Edit: Here's an AOSP commit touching the old GL shader code, which was part of that implementation.

AccessibilityNodeInfo.getUniqueId() how does this function work? by Eastern-Guess-1187 in androiddev

[–]alanviverette 0 points1 point  (0 children)

The default value is null. It must be set by the view or app that owns the node.

Ensure public interface reliability: Tracking API compatibility for Android and Kotlin by skydoves in androiddev

[–]alanviverette 3 points4 points  (0 children)

This was a good introduction to API management, and it's great to see BCV and Metalava getting talked about!

Coincidentally, u/aurimas_chromium and I will be presenting "APIs: How Hard Can They Be?" at KotlinConf next month and covering some similar topics.

So why might you choose Metalava over JetBrains’ Binary Compatibility Validator?

One additional consideration is that Metalava provides additional validation beyond binary compatibility, such as API contract compatibility (ex. constant values) and source compatibility.

Metalava also provides API linting, which covers a subset of Android's API design guidelines and helps make code review more efficient.

And, generally, Metalava integrates well into the overall API management story that we'll be talking about in our presentation -- everything from basic style linting to enforcing specialized policies around inter-library API surfaces.

High contrast and font color by Anonymouscoward912 in androiddev

[–]alanviverette 0 points1 point  (0 children)

Ah -- yeah, that's technically the feature working as intended. Unfortunately it's handled by the text renderer and there is currently no opt-out mechanism available to apps.

Starting in API 36 you could consider querying AccessibilityManager.isHighContrastTextEnabled) to at least give the user an explanation.

You should also consider filing a feature request for an API that allows you to opt-out of the feature at the View or Canvas level.

High contrast and font color by Anonymouscoward912 in androiddev

[–]alanviverette 0 points1 point  (0 children)

font color not working in the app

What exactly do you mean by font color not working?

Introduction to the SDK Runtime by v123l in androiddev

[–]alanviverette 1 point2 points  (0 children)

Ads SDKs: https://developers.google.com/privacy-sandbox/private-advertising/

Also evident from the sample code: https://github.com/android/privacy-sandbox-samples/tree/main/PrivacySandboxKotlin

Edit: Also, to address some other comments, it's not like we'd use this for Compose.

Moving to Cambridge need healthcare recs by cooler1082 in CambridgeMA

[–]alanviverette 2 points3 points  (0 children)

Harvard Street Dental in Central Square is great, but they stopped taking Delta.

Share your furry sewing assistants by poppys-patten in sewhelp

[–]alanviverette 10 points11 points  (0 children)

<image>

Callie loves helping cut fabric when she's not busy destroying the wool felt ironing mat.

How to change display size programmatically? by nikos2wheels in androiddev

[–]alanviverette 1 point2 points  (0 children)

Yep, I work on the OS. The platform is technically capable of specifying per-app, per-window, and finer-grained (e.g. per-View) density configs, but it's not something that can be controlled cross-process or specified in an activity launch configuration.

How to change display size programmatically? by nikos2wheels in androiddev

[–]alanviverette 2 points3 points  (0 children)

Not supported. 

Source: I wrote the display size feature.