Fundamentals 5 min read

Exploring Partial POJOs, Meta‑Information, and Scala 3 Mirror in a Scala Meetup

The article recaps the ninth Scala Meetup where speaker Pei Qi (Li Guobin) introduced GraphQL‑driven partial POJOs, Scala 3's Mirror feature, Magnolia as an alternative, type‑class concepts, and compared Scala 2 and Scala 3, while also promoting the Tubi data‑platform lead role and past meetup resources.

Bitu Technology
Bitu Technology
Bitu Technology
Exploring Partial POJOs, Meta‑Information, and Scala 3 Mirror in a Scala Meetup

This post reviews the ninth Scala Meetup, described as the most hardcore session, inviting readers to revisit the talk and experience Scala’s appeal.

Attendees are encouraged to follow the "比图科技" WeChat public account and join the Scala development discussion group.

The main topic explains how GraphQL shifts the requirements for POJOs from simple data containers to partial structures with accompanying meta‑information; speaker Pei Qi (Li Guobin) presented his work on this subject, sponsored by Tubi.

Pei Qi first covered the fundamentals of GraphQL and gave an overview of the existing GraphQL ecosystem, highlighting the Scala‑related tools.

He then demonstrated the development of a schema‑less module, starting from a simple case class, progressively adding code to extract and parse case‑class metadata, and provided an entry‑level analysis of Scala 3’s new Mirror feature line by line.

The talk also introduced Magnolia as an alternative to Mirror and used straightforward Java examples to explain the Type Class concept previously mentioned in earlier Meetups.

Finally, Pei Qi compared Scala 2 and Scala 3, emphasizing that Scala 3 is a superset of Scala 2 in source compatibility; he discussed macro improvements, library‑level differences, compilation differences, and how cross‑build mode allows most Scala 2 code to remain functional with minimal changes.

He noted that macro compatibility issues mainly affect ecosystems where developers write macros; most libraries provide smooth migration paths, though many projects have not yet upgraded to Scala 3 due to macro‑related obstacles.

— Summary compiled by Scala developer djx314.

Readers are invited to watch the live replay and learn more about Pei Qi’s full presentation.

A recruitment notice follows, announcing that Tubi’s Data Team is seeking a Lead for their big‑data platform development, responsible for building scalable streaming pipelines, collaborating with ML, product, and DevOps teams, and overseeing architecture, performance, and hiring; preferred languages are Scala, Python, or Java.

The article concludes with recommendations for past Scala Meetup recordings, highlighting the community’s ongoing discussions about why and how to use Scala effectively.

GraphQLScalaMagnoliamirrorPartialPOJOScala3TypeClass
Bitu Technology
Written by

Bitu Technology

Bitu Technology is the registered company of Tubi's China team. We are engineers passionate about leveraging advanced technology to improve lives, and we hope to use this channel to connect and advance together.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.