<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Eric Bai]]></title><description><![CDATA[I'm a Canadian software engineer in NYC. You're probably here to read my posts about [my side projects](https://ericbai.co/tag/projects) or [movies and film fes]]></description><link>https://ericbai.co</link><generator>RSS for Node</generator><lastBuildDate>Fri, 04 Sep 2026 23:19:19 GMT</lastBuildDate><atom:link href="https://ericbai.co/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Introducing Festiful: Partnering with the New York Film Festival to make your festival schedule easier]]></title><description><![CDATA[Festiful is a website I created for film festival schedule planning. I’m excited to officially partner with the New York Film Festival this year to make Festiful the best way to plan your NYFF experience!
A film festival schedule can be daunting to p...]]></description><link>https://ericbai.co/introducing-festiful-partnering-with-the-new-york-film-festival-to-make-your-festival-schedule-easier</link><guid isPermaLink="true">https://ericbai.co/introducing-festiful-partnering-with-the-new-york-film-festival-to-make-your-festival-schedule-easier</guid><category><![CDATA[projects]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Thu, 28 Aug 2025 15:26:52 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1756389634273/d8a0d516-4b56-4f1c-a288-77589e8b4a47.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><a target="_blank" href="https://www.festiful.net/">Festiful</a> is a website I created for film festival schedule planning. I’m excited to officially partner with the New York Film Festival this year to make Festiful the best way to plan your NYFF experience!</p>
<p>A film festival schedule can be daunting to plan out. This year’s New York Film Festival has 81 films, and each film will have various screenings throughout 17 days. Festiful streamlines the planning process by reducing information overload and making it easier to visualize schedule options.</p>
<p>This year, New York Film Festival is partnering with Festiful, and endorsing the app as its recommended scheduling tool. Festiful’s data about NYFF’s movies and screenings is directly from FilmLinc, so Festiful will always be as up-to-date as the official FilmLinc pages. <a target="_blank" href="https://www.festiful.net/f/nyff-2025">Plan your NYFF schedule on Festiful here</a>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1756389694718/9e5f4eec-46fa-4cf6-a245-89d99415246a.png" alt class="image--center mx-auto" /></p>
<h1 id="heading-how-festiful-works">How Festiful works</h1>
<p>You can browse the <a target="_blank" href="https://www.festiful.net/f/nyff-2025">NYFF lineup</a> within Festiful. You can like films you’re interested in to add them to your shortlist. These lists are shareable: <a target="_blank" href="https://www.festiful.net/f/nyff-2025/shortlist/eric">here’s my NYFF shortlist</a>!</p>
<p>In your planner, you can see all the screenings for films you added to your shortlist, visualized so that it’s easy to see when different screenings would conflict. Clicking on a screening will add it to your schedule.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1756394781557/b671ebe7-988b-4753-a35f-ff4245d2e9ea.png" alt class="image--center mx-auto" /></p>
<p>You can then review your finalized schedule, export it to your calendar app, and share your schedule with others. The schedule page even has links to purchase your tickets.</p>
<p>Screenings on Festiful will also let you know when they are sold out or have limited tickets remaining!</p>
<h1 id="heading-let-me-hear-from-you">Let me hear from you!</h1>
<p>If you have feedback about Festiful, I’d love to know. Leave a comment on this blog post, or reach out to me on <a target="_blank" href="https://x.com/BaiEric">Twitter</a> or <a target="_blank" href="https://www.threads.com/@baieric">Threads</a>.</p>
<p>If you are interested in Festiful for other film festivals, I’d love to know which ones! Please reach out.</p>
<p>If you’re interested in learning about how I created Festiful, subscribe to this blog — I plan to make a post on the creation process in the near future.</p>
<h1 id="heading-thanks">Thanks</h1>
<p>Thanks to Jordan Raup, Associate Director of Marketing at FilmLinc, for being such a great partner in preparing Festiful for this year’s NYFF. Jordan’s been a fantastic ambassador for the festival by always engaging directly with the festival-goer community, and this proactivity is how I was able to connect with FilmLinc. I’m super grateful for Jordan’s trust in me and the potential for Festiful. His collaboration and feedback leading up to this launch have been essential to its success.</p>
<p>Thanks to Ingrid Wang for her support and feedback, which has been tremendously helpful in making Festiful a better experience. I’m grateful for all the film festivals we’ve gone to together, and looking forward to many more!</p>
]]></content:encoded></item><item><title><![CDATA[The Ultimate Cannes Film Festival Guide: Three Days in Cannes]]></title><description><![CDATA[Did you know that anyone can attend the Cannes Film Festival? It’s an amazing opportunity for any film lover, but the process to get in is hard to navigate on your own. Once you are in, getting the most out of your experience can be daunting as well....]]></description><link>https://ericbai.co/the-ultimate-cannes-film-festival-guide-three-days-in-cannes</link><guid isPermaLink="true">https://ericbai.co/the-ultimate-cannes-film-festival-guide-three-days-in-cannes</guid><category><![CDATA[Movies]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Wed, 31 Jan 2024 17:47:51 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1740166717706/c80f955d-6d9b-4fe9-aaa0-204edc8551f8.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Did you know that anyone can attend the Cannes Film Festival? It’s an amazing opportunity for any film lover, but the process to get in is hard to navigate on your own. Once you are in, getting the most out of your experience can be daunting as well.</p>
<p>If you’re eligible, we highly recommend the “Three Days in Cannes” program. This guide will explain how this program works and how to make the most of it.</p>
<p>While this guide is detailed, there is a Cheat Sheet section at the end that provides a super-summarized version of what you need to do to apply and prepare for this experience.</p>
<p>Note that the Three Days program is relatively new — it only started in 2018. The festival organizers are changing the experience every year, and this guide reflects how the program worked as of 2023.</p>
<p>For those planning to apply for Three Days in Cannes, the most important thing to know, if you don't read anything else in this post: <strong>Applications typically open on February 1st, and applying early seems to improve your chances of getting accepted. Start writing your application before February 1st.</strong></p>
<h2 id="heading-why-the-three-days-in-cannes-program">Why the Three Days In Cannes program?</h2>
<p>The most important things to know about the Three Days program:</p>
<ul>
<li><p>Like the name suggests, you are only able to attend for three days (the entire festival is two weeks)</p>
</li>
<li><p><strong>You must be 28 and under to be eligible for this program</strong></p>
</li>
<li><p>You get access to the entire official program</p>
</li>
</ul>
<p>The only other way to get accredited, besides being in the industry or press, is through the Cinephile program. Cinephiles can attend for the entire two weeks of the festival — however, they have limited access to the official program, and can only get advanced tickets specifically for Cinephile badges. This means it’s much harder to get into the main theaters and premieres, and you’re restricted to a smaller selection of screenings.</p>
<p>As such, Three Days is likely a better experience than the Cinephiles program for those eligible.</p>
<p>Turning 29? As of 2025, you need to be 28 years old two weeks before the beginning of the festival.</p>
<h2 id="heading-which-session-to-apply-for">Which session to apply for</h2>
<p>As part of the application process, you must decide which three days to attend: the first three days, the middle three days, or the last three days.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704937709768/94722bea-2885-4314-bfcc-9e1dc6b93949.png" alt class="image--center mx-auto" /></p>
<p><em>An example schedule of your options for which 3 days to attend (from 2023).</em></p>
<p>If you care more about watching more movies, we recommend the last three days. As the festival progresses, there will be more repeat screenings of films that premiered earlier. For the final three days only, there is a special theater called Les Arcades specifically for Three Days in Cannes badges, which makes getting tickets for popular movies much easier. Not only will you have way more screenings to choose from, but you’ll also know about the buzz around movies that screened earlier in the ceremony, giving you a better idea of what to watch.</p>
<p>If you’re lucky or willing to wait hours in line, you’ll also be able to attend the closing ceremony, where the jury gives out awards and then screen an exclusive closing film.</p>
<p>If your goal is to see or meet people in the industry, the first three days are the best. More important people are around during this time. Note that the first day won’t have many screenings. The middle three days are a mixed bag. More films will have premiered and there may be a buzzy premiere like <em>Killers of the Flower Moon</em> in 2023, but those will always be very difficult to get into.</p>
<p>For most people, the last three days are the best way to get the most out of the festival. But regardless of which you choose, any three days in Cannes should still be an amazing time.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704938778440/e3089366-b245-40ad-91e7-0ffa84d9565c.png" alt class="image--center mx-auto" /></p>
<p><em>Les Arcades, the venue where the special 3 Days in Cannes screenings are held. It has three theaters of different sizes.</em></p>
<h2 id="heading-applying-for-your-accreditation">Applying for your accreditation</h2>
<p><a target="_blank" href="https://cinemadedemain.festival-cannes.com/en/take-part/get-3-days-in-cannes-accreditation/">Apply for the Three Days accreditation here</a>. <strong>Applications open at the beginning of February, and you should apply as early as you can</strong>. Acceptances are given out on a rolling basis – you should hear back in a few weeks. Applying later runs the risk of the program running out of spots.</p>
<p>The most time-consuming part of your application will be writing a letter of motivation. This letter should be roughly one to two pages and should describe your passion for film. <a target="_blank" href="https://ericbai.co/how-i-got-into-cannes-film-festival-and-how-you-can-too">Check out an example letter that Eric wrote</a> for his first application.</p>
<p>Besides the letter, it’s a standard application form where you fill in some personal details. You will be asked to submit a photo of yourself, which will get printed on your badge. This does not need to be a boring ID photo – feel free to use a glamorous headshot so your badge will look nice!</p>
<p>There is a €20 environmental fee to apply, which goes toward carbon offsets.</p>
<h2 id="heading-preparing-for-your-trip">Preparing for your trip</h2>
<h3 id="heading-choose-accommodations-and-flights">Choose accommodations and flights</h3>
<p>Finding accommodations will be difficult, so book early. Within your budget, optimize for proximity to the Palais des Festivals. With plenty of listings offering free cancellations, you should book a place before you even apply for accreditation. We suggest booking 4 nights, arriving the day before and leaving the day after.</p>
<p><img src="https://lh7-us.googleusercontent.com/J8XXCtH3QvO193Rlcw9fifBD3IwhKh9EDuPno0jJHQDuJycC7bDe5LwEF4bwQwR98bD94MvIYw-XsVd2Yk9u6FfCbQpPLUIPBGuBdpRzH0dhx_pvEuLxd8_asDDgRHtuo9msCwspfKnmr2vZPo4yfjk" alt /></p>
<p><em>Try to stay somewhere within walking distance of the Palais des Festivals.</em></p>
<p>For flights, you should fly to the airport in Nice. It’s likely okay to book your flight after you get your acceptance. From the Nice airport, there’s a train that will take you to Cannes in under an hour. Ideally leave enough time so that you can pick up your badge before the office closes (in 2023, it closed at 6pm). This way you’ll be able to catch an early screening the next morning.</p>
<h3 id="heading-prepare-formal-attire">Prepare formal attire</h3>
<p>For evening screenings at the main theaters (Grand Théâtre Lumière and Salle Debussy), you must wear formal attire. For men, you need a dark suit, dress shirt, bow tie, and dress shoes. They are very strict about the men’s dress code. For women, any formal dress and shoes should be fine. If you don’t already have formal attire ready, budget time to get some after your application is accepted. Also note that for evening screenings, you cannot bring large bags such as tote bags.</p>
<p>Casual attire is totally fine outside of the evening screenings, as are larger bags.</p>
<h3 id="heading-figuring-out-what-movies-to-see">Figuring out what movies to see</h3>
<p>Every film at Cannes screens under a program. The most popular films by established directors are typically in the “In Competition” and “Out of Competition” programs, which are screened at the Grand Théâtre Lumière. This doesn’t mean you should ignore the other programs, though – it’s always fun to find talented up-and-coming directors as well.</p>
<p>Cannes will announce the festival line-up about a month before the beginning of the festival. To get this information as soon as it is released, you can <a target="_blank" href="https://twitter.com/Festival_Cannes">follow them on Twitter</a>.</p>
<p>If you already have a good idea of how you'd choose which movies to see, you can skip the rest of this section.</p>
<p>The best way to get a pulse for what movies to see is to follow film critics on social media. This can be more effort than most would prefer, because you need to familiarize yourself with certain critics to get a feel for if they provide good signals for whether you'll like a film.</p>
<p>There are lower-effort ways to figure out what to watch. We recommend the following resources that aggregate critic sentiment:</p>
<ul>
<li>Twitter. For example, when Cannes announces the festival line-up, they make a tweet for every movie they announce. <a target="_blank" href="https://twitter.com/search?q=from%3Afestival_Cannes%20until%3A2023-04-14%20since%3A2023-04-12&amp;src=typed_query&amp;f=top">Here’s an example of the tweets they made for the 2023 festival</a>. On the day they announce this year’s line-up, see which tweets have the most engagement for a sense of what people are excited for.</li>
</ul>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1706296517331/01c685db-277f-49b2-b8c9-45a2de99ca32.png" alt class="image--center mx-auto" /></p>
<ul>
<li>Reddit. The subreddit <a target="_blank" href="https://www.reddit.com/r/oscarrace">/r/oscarrace</a> loves to speculate which movies will perform well, so it’s worthwhile to see what people are saying when the line-up is announced. During the festival, this subreddit will aggregate critics’ opinions right after a premiere, making it very convenient to get a feel for what’s popular.</li>
</ul>
<p>Critic reviews are released right after the premiere of a movie at Cannes.</p>
<h2 id="heading-getting-tickets">Getting tickets</h2>
<p>The online ticketing system is the only way for Three Days in Cannes participants to directly get tickets. This system has many important restrictions:</p>
<ul>
<li><p>You are not allowed to get multiple tickets to the same movie, even for different screenings. So if you want to change what time you want to see a movie, you have to give up your current screening first (and could risk not being able to get either screening!)</p>
</li>
<li><p>You are not allowed to get tickets to screenings that overlap in time. Again, you need to give up your current screening to even have a chance at getting the alternate ticket you want.</p>
</li>
<li><p>You are not able to see the availability of tickets for screenings you aren’t allowed to go to. If possible, work together with friends. One person without a conflicting ticket can check ticket availability for the other person.</p>
</li>
</ul>
<p>When booking tickets, make sure to consider:</p>
<ul>
<li><p>Travel time between theaters.</p>
<ul>
<li><p>For example, the Cineum theaters are a 20 minute bus ride away from the rest of the theaters. If you’re trying to watch a lot of movies, avoid Cineum screenings if possible.</p>
</li>
<li><p>For evening premieres at the Lumiere, leave extra time to get through security (there will be more barriers and fences) around the theater and the red carpet.</p>
</li>
</ul>
</li>
<li><p>Time to change into formal attire before evening premieres.</p>
</li>
<li><p>Time to eat and take breaks!</p>
</li>
<li><p>Screenings generally start on time. When cast and crew are in attendance, there may be a long standing ovation, and they may say a few words afterward.</p>
</li>
<li><p>You can attend back to back screenings in the same theater, but you’ll have to exit and reenter to scan your badge and go through security, if applicable.</p>
</li>
<li><p>There is no assigned seating. Add buffer time to get more desirable seats. In the Grand Théâtre Lumière, seats are assigned into a section (orchestra, balcony, corbeille) but not a specific seat.</p>
</li>
</ul>
<h3 id="heading-before-you-arrive">Before you arrive</h3>
<p>You will be able to see the schedule on Cannes’ ticketing system well before tickets are released. Take this time to put together an ideal schedule, including backups in case the tickets you wanted are gone. Note that additional screenings get added right before and during the festival, so keep an eye out for these, and be prepared to change plans. Tickets are claimed quickly, so you should be ready to book tickets as soon as they are released.</p>
<p><strong>Save the URLs of the screening pages you plan to book in a document</strong> — the ticketing website will not be accessible right before tickets open, so having a direct link to these pages will give you a better chance of getting a ticket.</p>
<p>Tickets will be released four days before at 9am Cannes time (double check this time with Cannes, it could change in future years). Whatever time that is in your time zone, set an alarm a few minutes before that in order to be first in line for tickets.</p>
<p><img src="https://lh7-us.googleusercontent.com/XvHNThURKkCwdNXNbBSg8F_gSXnNe3dPFzCE7UIrmkArQUQftimD3haz3CIMx6Mo2wZw6Cjoh_mKMSUIs1YZsiCw97Tl0oJi4NNVsnUgMeYhT97e0MVFJ-LWZW-26CT-2F_3n9mgRS6DrsiLWwFx7bs" alt /></p>
<p><img src="https://lh7-us.googleusercontent.com/ep71WxaGkPYPWga7DTjKF2iuRBJovdBgC2Xtw9NZR9TK9Q6MP-KbNradUMtGgpllntu2Bvim8fVRaJjyWadpm2hEwmQZn3J_l5rjyh0uUOUuiKWVOD8qvbVMaPv2HQ_wMHBGjiGZZsGLOk_Qf4Pk2zc" alt /></p>
<p><em>The dreaded queue screen before the ticketing system opens.</em></p>
<p>Once it’s time to book your tickets, have tabs open for all the screening URLs you saved earlier. You should prioritize non-Three Days <strong>evening</strong> screenings and any screenings for particularly popular movies. (It will be easy to get into morning screenings without a ticket using the Last Minute Line. Screenings specific to Three Days badges will also be easier to get.) Other Cannes attendees get ticket access earlier than those in Three Days, so tickets might be gone before you even get access.</p>
<p>Yes, you will have to do this process for 3 days straight. If you aren't able to get tickets right when they release, there's a low chance you'll be able to get any tickets prior to the start of your three days.</p>
<p>Note that getting tickets on days with fewer screenings will be more difficult.</p>
<h3 id="heading-throughout-the-event">Throughout the event</h3>
<p>Don’t worry if you go into the festival with few or no tickets! Availability is always changing, and there are a few other ways to get into screenings:</p>
<ol>
<li><p>If you do not have tickets for a screening you want to attend, there will be a Last Minute Line that often allows a lot of people in. For morning screenings, you can usually get in by showing up right before the movie starts. Otherwise, you’ll want to line up for at least an hour, possibly multiple hours, depending on how popular the movie is. Some of the most popular movies, as well as the closing ceremony, can have a line where you need to show up 4-6 hours early!</p>
</li>
<li><p>When anyone gives up their tickets, it will be up for grabs on the ticketing system. For any screening that you really want, you can spend your down time at Cannes refreshing the ticket page to see if any availability comes up.</p>
</li>
<li><p>There is a <a target="_blank" href="https://www.facebook.com/groups/168938113818514">Three Days in Cannes Facebook group</a> that is useful for finding people giving away or trading tickets. A lot of ticket exchanges happen in WhatsApp chats, which you should be able to find through this Facebook group.</p>
</li>
<li><p>You can also try making a sign to beg for tickets near the red carpet. We have no idea how often this works.</p>
</li>
</ol>
<p>Note that you will be penalized for not attending a screening you have a ticket for. To avoid a penalty, you need to release a ticket at least 30 minutes before the movie starts (1 hour for the Lumiere). You will not be able to book tickets after you fail to attend two screenings. We recommend giving up morning tickets the night before if you’re not sure you can make them – the ticketing system won’t be open until 9am for Three Days badges, so you can’t release tickets for 8:30am or 9am screenings that day. Other attendees who forget to release their tickets may also post in WhatsApp chats to give them away and avoid the penalty.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704938815739/1f68f353-bf47-4eae-b27a-dd8fe1262305.png" alt class="image--center mx-auto" /></p>
<p><em>A very relaxed Last Minute Line at the Grand Théâtre Lumière at 9am.</em></p>
<h2 id="heading-attending-cannes">Attending Cannes</h2>
<h3 id="heading-before-your-3-days">Before Your 3 Days</h3>
<p>Pick up your badge the day before your three days starts. You will need to show your ID to pick up your badge. The badge office closed at 6pm in 2023. This day is also a good opportunity to buy merchandise from the gift shop. Be sure to show your badge for 20% off.</p>
<p><img src="https://d27csu38upkiqd.cloudfront.net/eyJidWNrZXQiOiJmZGMtc2l0ZXB1YmxpYy1tZWRpYS1wcm9kIiwia2V5IjoidXBsb2Fkc1wvMjAyM1wvMDVcL2JvdXRpcXVlLWNhbm5lcy0yMDIzLnBuZyIsImVkaXRzIjp7InJlc2l6ZSI6eyJ3aWR0aCI6NjY3LCJoZWlnaHQiOjQxNiwiZml0IjoiY292ZXIifSwidG9Gb3JtYXQiOiJ3ZWJwIn19" alt class="image--center mx-auto" /></p>
<p><em>A small sample of the merchandise available at the gift shop.</em></p>
<p>On the day before your 3 days, there may be festival events open to the public. You can attend these even though your badge only activates the next day! Keep your eyes out for these events in the festival schedule. For example, Cannes screens classic movies at the beach (the Cinéma de la plage). There also may be screenings past midnight the evening before your 3 days begins. You won’t be able to book tickets for these, but you can stand in the Last Minute Line and enter with your badge after midnight.</p>
<p>If you're staying in Cannes beyond your 3 days, consider parallel competitions such as Semaine de la Critique or Directors’ Fortnight. They run during the same time and do not require a Cannes badge. You can sign up on the ticketing website with a different email to access those screenings which are open to the public.</p>
<h3 id="heading-attending-screenings-and-events">Attending Screenings and Events</h3>
<p>In addition to the dress code mentioned previously, note that you shouldn’t bring big bags or food in open containers into the theaters.</p>
<p>For screenings where you already have a ticket, plan to arrive early. You can lose your seat to folks in the last minute line if you don’t arrive on time. There is also no assigned seating, so being early will help you get better seats.</p>
<p>Each movie will support both French and English. If the movie is in neither language, French subtitles will be shown on screen, with English subtitles projected below.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704938844058/283e731f-59fa-4e67-8531-20ce07a4ec1c.png" alt class="image--center mx-auto" /></p>
<p><em>The block below the screen is where English subtitles will appear. Before the screening begins, the red carpet will be broadcast from outside.</em></p>
<p>If you plan on waiting in last minute lines, be aware that Cannes can get very hot in May. Prepare appropriate clothes and sun protection.</p>
<p>You can attend the opening/closing ceremonies if you’re lucky enough to have a ticket, or if you are okay with waiting &gt;4 hours in line. They will also have screens outside of the theatre that broadcast the event, so you can watch outside as well. Note that much of the event is in French.</p>
<h3 id="heading-the-red-carpet">The Red Carpet</h3>
<p>The famous red carpet that leads to the Grand Théâtre Lumière is fenced off, and paparazzi and tourists flock to these fences to try to see celebrities. You can try to wade through this crowd before the premiere of a movie if there's a particular celebrity you really want to see.</p>
<p>When you attend a screening at the Grand Théâtre Lumière, you enter through this red carpet, which is a great experience, especially if you're dressed up. Unfortunately, you’re not allowed to take photos on the red carpet, but it's not too difficult to sneak a quick photo. If you get into a screening in the Grand Théâtre Lumière via the Last Minute Line, you’ll be hurried into the theater right before the screening starts, so there’s little time to enjoy your moment on the famous steps.</p>
<p>If you’re in the Last Minute Line at the Grand Théâtre Lumière, you’ll be lining up right next to the red carpet and may be able to catch a glimpse between the rows of photographers and when they ascend the steps. The large screen in the front of the building will also be broadcasting a video feed of the red carpet.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704939535214/a57e1b98-8811-4b84-92ce-8870b8e885ab.png" alt class="image--center mx-auto" /></p>
<p><em>The Last Minute Line at the Grand Théâtre Lumière. The red carpet is to the right.</em></p>
<h3 id="heading-manage-your-time-and-energy">Manage your time and energy</h3>
<p>Make sure you are well-rested. If possible, try to adjust to the Cannes time zone ahead of time, otherwise your body will be begging for sleep during a movie.</p>
<p>Budget time in your schedule for food. With lots of movies to attend, be prepared to find ready-made food nearby. Keep in mind that sit-down restaurants in Cannes can have quite slow service.</p>
<p>Cannes is a resort town along the French Riviera. A great way to relax is to lounge on the beachfront. Pack some beach gear!</p>
<h3 id="heading-our-experience-in-2023">Our Experience in 2023</h3>
<p>If you'd like to learn more about our specific experience attending Three Days in Cannes, check out <a target="_blank" href="https://ericbai.co/three-days-in-cannes-2023-the-cannes-film-festival-experience-recapped">my blog post</a>.</p>
<h2 id="heading-cheat-sheet">Cheat sheet</h2>
<p>A super-summarized list of what you should do and when.</p>
<p><strong>Before February:</strong></p>
<ul>
<li><p>Write your letter of motivation (<a target="_blank" href="https://ericbai.co/how-i-got-into-cannes-film-festival-and-how-you-can-too">see an example letter here</a>)</p>
</li>
<li><p>Have a nice portrait photo of yourself to submit as your badge photo</p>
</li>
<li><p>Book cancelable accommodations, as close to the center of Cannes as you can afford</p>
</li>
</ul>
<p><strong>February 1 (until mid April)</strong></p>
<ul>
<li><p><a target="_blank" href="https://cinemadedemain.festival-cannes.com/en/take-part/get-3-days-in-cannes-accreditation/">Submit your application</a>, preferably for the last 3 days of the festival.</p>
</li>
<li><p>Apply as early as possible to improve your acceptance chances</p>
</li>
</ul>
<p><strong>Once you’re accepted (likely early March, if you apply early)</strong></p>
<ul>
<li><p>Have formal attire ready</p>
<ul>
<li><p>for men, a suit with dress shirt, bow tie, and dress shoes</p>
</li>
<li><p>for women, you already know what to do</p>
</li>
</ul>
</li>
<li><p>Book flights, if you haven’t already.</p>
<ul>
<li><p>You'll likely arrive by flying to Nice.</p>
</li>
<li><p>When planning flights, consider adjusting to the Cannes timezone early if possible, so you'll be better rested during the 3 days.</p>
</li>
<li><p>You want to be in Cannes the day before your 3 days, well before the badge office closes at 6pm.</p>
</li>
</ul>
</li>
</ul>
<p><strong>Mid-April</strong></p>
<ul>
<li>Cannes will announce its line-up. Start a rough plan of what movies you’d like to see.</li>
</ul>
<p><strong>Early and mid-May</strong></p>
<ul>
<li><p>Check screening times to figure out your ideal schedule. Have a plan, with back-ups, of what tickets you will try to book before tickets are released. <strong>Save the URLs of these screenings now.</strong></p>
</li>
<li><p>4 days before each of the days you attend Cannes, be ready at 9am Cannes time to open the URLs you saved to book tickets. Prioritize evening tickets, tickets that are not specific to 3 Days in Cannes, and any popular movies first.</p>
</li>
<li><p>If you’re not attending the first 3 days, keep an eye out for reviews of movies that are premiering before you arrive.</p>
</li>
<li><p>Find and join Facebook groups, WhatsApp group chats, etc. where people are trading and giving away tickets.</p>
</li>
</ul>
<p><strong>The day before your 3 Days</strong></p>
<ul>
<li><p>Pick up your badge at the badge office. <strong>The office closes at 6pm.</strong></p>
</li>
<li><p>If you want, buy film festival merchandise. Use your badge for 20% off.</p>
</li>
<li><p>Start looking for last minute tickets.</p>
</li>
<li><p>Optionally, keep an eye out for free festival events happening this day, like the movies at the Cinéma de la plage.</p>
</li>
<li><p>Get good rest!</p>
</li>
</ul>
<p><strong>During the three days</strong></p>
<ul>
<li><p>Take advantage of the last minute lines, especially in the mornings.</p>
</li>
<li><p>Keep an eye out for last-minute availability of tickets, and people giving away or trading tickets.</p>
</li>
<li><p>Enjoy the movies!</p>
</li>
</ul>
<p>Worried this guide is out of date? The most up-to-date details about the 3 Days in Cannes program can be found on <a target="_blank" href="https://www.festival-cannes.com/en/take-part/your-festival-experience/">their official website</a>.</p>
<p>This guide was co-written by Eric Bai and Ingrid Wang. We hope you found this helpful!</p>
]]></content:encoded></item><item><title><![CDATA[Three Days in Cannes 2023: The Cannes Film Festival Experience Recapped]]></title><description><![CDATA[Attending the Cannes Film Festival was a long-time dream of mine, and I finally went in 2023. I got this opportunity to attend through the festival's 3 Days in Cannes program. I hope sharing my experience in this post convinces you to apply for the 3...]]></description><link>https://ericbai.co/three-days-in-cannes-2023-the-cannes-film-festival-experience-recapped</link><guid isPermaLink="true">https://ericbai.co/three-days-in-cannes-2023-the-cannes-film-festival-experience-recapped</guid><category><![CDATA[Movies]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Fri, 26 Jan 2024 18:25:41 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1705203880263/c7a48ab6-30e4-4c7f-9800-c40557c1ec7f.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Attending the Cannes Film Festival was a long-time dream of mine, and I finally went in 2023. I got this opportunity to attend through the festival's 3 Days in Cannes program. I hope sharing my experience in this post convinces you to apply for the 3 Days program, and prepares you for your own trip to the Cannes Film Festival.</p>
<p>I went to Cannes with a group of four. We had some concerns about not being able to get tickets or being forced to split up and watch movies separately. As you'll see in this post, we watched almost all our movies together and had a great time.</p>
<p>We jam-packed our three days — we watched ten movies in total. This might not be everyone's style, since it can get exhausting. There's many ways to enjoy your time at Cannes, and this is just one of them!</p>
<p>If you're looking for help with planning your own trip to Cannes, check out my post <a target="_blank" href="https://ericbai.co/the-ultimate-cannes-film-festival-guide-three-days-in-cannes">The Ultimate Cannes Film Festival Guide</a>.</p>
<h2 id="heading-arriving-the-day-before">Arriving the day before</h2>
<h3 id="heading-morning">Morning</h3>
<p>Our group met up at the Cannes train station, flying in from NYC or Lisbon earlier that day. We were varying levels of jet lagged, which became a problem during the festival, where we wished we could stay more awake.</p>
<p>The machines for buying a train ticket were confusing. You need to press the unmarked middle circle button to select your options. You must select a “From” station even though there’s obviously only one option, the station you are at.</p>
<p>After arriving in Cannes, we dropped our luggage off at the apartment we booked. This apartment was less than a 10 minute walk from the main theaters, which was amazing for taking quick breaks throughout our time here. There was also a great bakery right below the apartment that we went to every morning!</p>
<h3 id="heading-afternoon">Afternoon</h3>
<p>After grabbing lunch, we picked up our badges from the badge office. We then checked out the gift shop, which I recommend. The official program guide, posters, hats, tote bags, and other merchandise are all quite nice. Show your badge at the gift shop for 20% off!</p>
<h3 id="heading-evening">Evening</h3>
<p>After dinner, we slept early because we were so exhausted from our flights.</p>
<h2 id="heading-day-1">Day 1</h2>
<p>On Day 1, most of our group had 3 movie tickets that we got beforehand. Most of us watched 4 movies this day. Every movie we watched was from a different country: France, Finland, Japan, and America! Due to jet lag, we were fighting to stay awake all day, even when we were enjoying the movies we watched.</p>
<h3 id="heading-morning-1">Morning</h3>
<p><strong><em>The Taste of Things, 9:00–11:25am</em></strong></p>
<p>We lined up in the Last Minute Line for a 9am screening of French film <em>The Taste of Things</em> (which at the time had no English name, so we knew it as <em>The Pot-au-Feu</em>. We prefer this name!). We arrived at 8am and got in very early — morning screenings are easy to get into without a ticket. This screening was at the Grand Théâtre Lumière, which is the most iconic venue at Cannes. We entered through the famous red carpet, where we quickly snuck some pictures.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1705201843334/9d8cbd2b-eb31-43f7-bbd1-0534550a97bf.png" alt class="image--center mx-auto" /></p>
<p>The auditorium itself is gigantic and opulent, with a whole squad of elegantly uniformed ushers guiding audience traffic. The beauty of this theater really set the tone for the film festival experience. The movie itself was also gorgeous. <em>The Taste of Things</em> had many beautiful depictions of cooking elaborate feasts, so we were very ready for lunch by the end of it.</p>
<h3 id="heading-afternoon-1">Afternoon</h3>
<p><strong><em>Fallen Leaves, 1:15–2:36pm</em></strong></p>
<p>After lunch, we constantly refreshed the ticket website to see if we can get into more screenings — we had nothing lined up for Day 2 in the afternoon. Tickets become available whenever existing ticket holders choose to release them. We luckily were all able to get tickets to <em>La Chimera</em>'s world premiere screening! None of our prior tickets were premieres, so we were stoked.</p>
<p>After a quick rest, we went to our second movie of the day, the Finnish film <em>Fallen Leaves</em>. The screening was at Les Arcades, a theater specific to members of the 3 Days in Cannes program, which made tickets easier to get in advance. Only those attending the last 3 days of Cannes get this Les Arcades perk. Unlike the Grand Théâtre Lumière, Les Arcades was more like a regular movie theater. One of us didn't have tickets in advance for this movie, but got it from regularly refreshing the ticket page the day before.</p>
<h3 id="heading-evening-1">Evening</h3>
<p><strong><em>Monster, 4:50–6:55pm</em> • <em>May December, 7:15–9:08pm</em></strong></p>
<p>We ate a small early meal and then went to our evening screenings. Most of our group watched <em>Monster</em> and <em>May December</em> back-to-back at Les Arcades. It's required to exit the building and re-queue to get into the second screening. One of us didn't have tickets to either, but got into <em>May December</em> via the Last Minute Line.</p>
<p>We were still hungry after this long day, and grabbed another small meal before going to bed.</p>
<p>My personal favorite film of this day was <em>May December</em>. Todd Haynes is an amazing director, and all 3 of the main cast (Natalie Portman, Julianne Moore, and Charles Melton) delivered great performances.</p>
<h2 id="heading-day-2">Day 2</h2>
<p>Our group watched three films on this day. We got tickets through a variety of ways: tickets we had in advance for Les Arcades screenings, refreshing the ticket website during Day 1, and the Last Minute Line. Most of the group got to attend two world premiere screenings!</p>
<h3 id="heading-morning-2">Morning</h3>
<p><strong><em>The Zone of Interest, 11:10am–12:56pm</em></strong></p>
<p>The first film of the day was later in the morning, so fitting in a 9am screening would have been too tight. After an ambitious and jetlagged Day 1, we really needed more sleep anyway. Our first film on Day 2 was <em>The Zone of Interest</em> at Les Arcades. It's a brutal movie to start the day off with, but was a uniquely moving, haunting experience.</p>
<h3 id="heading-afternoon-2">Afternoon</h3>
<p><strong><em>La Chimera (world premiere), 3:30–5:40pm</em></strong></p>
<p>After lunch, we went back to the apartment to get dressed up. While only evening screenings require formal attire, we were planning to line up in the Last Minute Line right after our next movie, meaning the second of our back-to-back screenings was in the evening. There would be no time to change in between.</p>
<p>In our suits and dresses, we attended the world premiere of <em>La Chimera</em> at the Grand Théâtre Lumière. The cast and crew were in attendance, and we got to witness Cannes Film Festival's famous standing ovations. Because of our plan to get to the Last Minute Line, some of us left right when the credits rolled. Some of us stayed to see the director make some remarks, then joined the others in line.</p>
<h3 id="heading-evening-2">Evening</h3>
<p><strong><em>The Old Oak (world premiere), 6:30–8:23pm –OR– Anatomy of a Fall, 8:05–10:36pm</em></strong></p>
<p>Our next stop was the Last Minute Line for the world premiere of <em>The Old Oak</em>. Despite being a premiere evening screening, we waited only about an hour to get in. Unfortunately, I was wearing a regular tie and not a bow tie. When we reached the front of the line, the staff told me that I was violating the dress code and was not allowed in. If you're wearing a suit to an evening screening, make sure to bring a bow tie!</p>
<p>While I personally failed to attend an evening premiere, I had a back-up ticket at Les Arcades to see the French film <em>Anatomy of a Fall</em>, which ended up being my favorite movie of Day 2. This film ended up winning the main prize of the festival, the Palme D'or!</p>
<h2 id="heading-day-3">Day 3</h2>
<p>On this day, most of our group watched 2 movies. We also watched the closing ceremony, which was a great way to cap off the trip. We had trouble getting any advanced tickets for this day, but got tickets from the WhatsApp group and from the Last Minute line.</p>
<h3 id="heading-morning-3">Morning</h3>
<p><strong><em>Perfect Days, 8:30–10:33am</em> • <em>Anatomy of a Fall, 11:00am–1:31pm</em></strong></p>
<p>We got last-minute tickets to the Japanese film <em>Perfect Days</em> from the WhatsApp group for 3 Days attendees. People tend to give away morning screenings in this chat because the ticketing system is not open until later in the morning, and you are penalized for having unused tickets. It's impossible to release these tickets via the ticketing system the morning-of. We probably could have gotten in via the Last Minute Line as well. <em>Perfect Days</em> was my favorite movie from the entire festival!</p>
<p>Since I was the only one who watched <em>Anatomy of a Fall</em> the day before, the rest of the group tried to use the Last Minute Line right after <em>Perfect Days</em>. Unfortunately, this time the line was clearly too long, so we gave up.</p>
<p>While we were eating brunch, we saw that someone in the WhatsApp chat was giving away a ticket to <em>Anatomy of a Fall</em>. One of us luckily claimed it, and the rest of us went back to the apartment to relax.</p>
<h3 id="heading-afternoon-3">Afternoon</h3>
<p><strong><em>Asteroid City, 3:15–4:59pm</em></strong></p>
<p>We last-minute decided to give up the existing tickets we had, and instead try the Last Minute Line for Wes Anderson's <em>Asteroid City</em>. We originally weren't planning to watch this at Cannes because it would release in New York City the next week. We changed our minds because we wanted the last film of our Cannes trip to be a more fun, lighthearted one. We had plenty of time to kill, so lining up wasn't much of a sacrifice.</p>
<p>We lined up 2 hours before the movie, and were one of the first groups in line. We could have likely arrived later and still gotten in. Unfortunately, the day was very sunny and hot, and the line was not in the shade. I recommend bringing a sun parasol to make this experience more bearable.</p>
<h3 id="heading-evening-3">Evening</h3>
<p><strong><em>Closing Ceremony, 8:30pm</em></strong></p>
<p>After <em>Asteroid City</em>, we visited to the statue of the Cannes Film Festival logo for some photos, then got dinner and ice cream.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1705203567328/1ac69c40-97e1-49dd-ad53-4181bd205289.png" alt class="image--center mx-auto" /></p>
<p>We considered lining up for the Closing Ceremony, but the line is incredibly long. We guessed we needed at least 4 hours to guarantee getting in (and I didn't have proper attire anyway). We loitered near the front of the line and actually witnessed someone else get kicked out for not wearing a bow tie.</p>
<p>Instead of trying to get into the ceremony, we stood outside near the red carpet, where they had screens live-streaming the event inside. This experience was very fun, and was a great substitute to attending in the theater.</p>
<h2 id="heading-the-day-after">The day after</h2>
<p>After a very fulfilling but exhausting three days, we left Cannes. To make the most of our time in Europe, some of our group headed to Paris, and some of our group caught a flight to Italy.</p>
<p>I hope this post helps illustrate how much you can do during your 3 Days in Cannes. It's incredibly fun be amongst the first audiences to ever watch these amazing movies from around the world!</p>
<p>If you're looking for help with planning your own trip to Cannes, check out my post <a target="_blank" href="https://ericbai.co/the-ultimate-cannes-film-festival-guide-three-days-in-cannes">The Ultimate Cannes Film Festival Guide</a>.</p>
]]></content:encoded></item><item><title><![CDATA[I ran my first marathon! A race report of the Philadelphia Marathon]]></title><description><![CDATA[Race Information
Name: Philadelphia Marathon
Date: November 20, 2022
Distance: 26.2 miles
Time: 3:43:52
Goals




GoalDescriptionCompleted?



ASub 3:45Yes

BSub 3:50Yes

CSub 4:00Yes


I felt very confident I could do sub 4 hours. I assumed 3:50 was...]]></description><link>https://ericbai.co/i-ran-my-first-marathon-a-race-report-of-the-philadelphia-marathon</link><guid isPermaLink="true">https://ericbai.co/i-ran-my-first-marathon-a-race-report-of-the-philadelphia-marathon</guid><category><![CDATA[running]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Mon, 28 Nov 2022 16:49:01 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1669654116566/Jgn9lMZAw.jpg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-race-information">Race Information</h2>
<p>Name: Philadelphia Marathon</p>
<p>Date: November 20, 2022</p>
<p>Distance: 26.2 miles</p>
<p>Time: 3:43:52</p>
<h2 id="heading-goals">Goals</h2>
<div class="hn-table">
<table>
<thead>
<tr>
<td>Goal</td><td>Description</td><td>Completed?</td></tr>
</thead>
<tbody>
<tr>
<td>A</td><td>Sub 3:45</td><td>Yes</td></tr>
<tr>
<td>B</td><td>Sub 3:50</td><td>Yes</td></tr>
<tr>
<td>C</td><td>Sub 4:00</td><td>Yes</td></tr>
</tbody>
</table>
</div><p>I felt very confident I could do sub 4 hours. I assumed 3:50 was a reasonable goal if things went according to plan. And I set 3:45 as an aggressive goal where nothing could go wrong. I was pretty worried that if I tried too hard for 3:45, I’d injure myself.</p>
<h2 id="heading-times">Times</h2>
<div class="hn-table">
<table>
<thead>
<tr>
<td>Distance</td><td>Net Time</td><td>Pace</td></tr>
</thead>
<tbody>
<tr>
<td>10k</td><td>53:56</td><td>8:41/mi</td></tr>
<tr>
<td>Half</td><td>1:50:45</td><td>8:27/mi</td></tr>
<tr>
<td>30K</td><td>2:37:04</td><td>8:26/mi</td></tr>
<tr>
<td>Finish</td><td>3:43:52</td><td>8:32/mi</td></tr>
</tbody>
</table>
</div><h2 id="heading-background">Background</h2>
<p>I started getting into running during 2020 as a way to get outside when there was nothing else to do during lockdown. I technically ran a half-marathon distance that autumn (with many breaks), and ran my first half-marathon race a year after that. Before 2022, I originally planned to stick to the half-marathon distance for a while, but decided in February to sign up for the Philadelphia Marathon, which sounded like the best east coast marathon I could get guaranteed entry for.</p>
<p>Before I started training, I ran 4 half marathon races throughout the first half of 2022. I also participated in the New York Marathon’s 9+1 Guaranteed Entry program throughout the year.</p>
<h2 id="heading-training">Training</h2>
<p>I followed Hal Higdon’s Novice 1 marathon training program. This 18-week program is super basic: three short runs on weekdays and one long run on the weekend, with the distances gradually increasing to 20 miles before a three week taper. There are no special types of runs for speed work — just pure distance training. My body seems to take a long time to recover, so I sometimes skipped short runs to avoid three runs on consecutive days.</p>
<p>I followed the training program pretty closely until the half-marathon. I chose to race the Rockaway Half Marathon for this long run. It was a flat, boring course along the beach on a very hot day. I pushed myself too hard, and though I got a PR, I felt injured after (likely a minor tear). I tried running through the injury at first, but skipped 2 long runs and then an entire two weeks of training. Not being able to run was demoralizing, but the caution paid off: I felt 100% once I resumed training. At this point, I had to improvise a condensed version of the Novice 1 plan to make up for  so many lost weeks. In the normal Novice 1 plan, there are weeks when your mileage goes down, as a recovery week before an increase. I didn’t have time for this and went from 25 miles to 30 miles on back to back weeks.</p>
<p>Some highlights from my training:</p>
<ul>
<li>Running with friends, usually in Central Park.</li>
<li>Running while traveling: San Francisco, Toronto, and Chicago were great spots to do long runs.</li>
<li>Getting to know more running spots throughout New York, especially around Queens.</li>
</ul>
<h2 id="heading-pre-race">Pre-race</h2>
<p>The day before the race, my girlfriend and I took the Amtrak from NYC to Philadelphia. We picked up my bib and toured the city.</p>
<p>There were three concerns throughout the day that had me worried about the race:</p>
<ul>
<li>While walking around the Philadelphia Museum of Art, my ankle had some dull pains.</li>
<li>The past week, I often woke up hungry in the middle of the night, so for dinner I tried to eat a hefty meal. I ended up eating too much though, and felt my digestion might cause issues.</li>
<li>Philly was seriously cold. I had forgotten to pack my running buff and gloves and didn’t have running socks for colder weather. I hadn’t trained in the cold, and was unsure about how warm to dress.
The pre-race anxiety was pretty high all day. We went to sleep around 9:30 pm. At 4:45 am, I woke up, ate a donut, and got ready.</li>
</ul>
<p>The gear I wore, after much deliberation:</p>
<ul>
<li>Nike Alphafly shoes</li>
<li>Icebreaker merino wool quarter-zip for my base layer</li>
<li>Patagonia Houdini jacket</li>
<li>UnderArmor leggings</li>
<li>Lululemon shorts</li>
<li>Smartwool merino wool socks</li>
<li>Flipbelt packed with 6 energy gels</li>
<li>My girlfriend’s REI toque in place of my buff</li>
<li>Apple Watch and AirPods</li>
</ul>
<p>The marathon conveniently provided a shuttle right outside my hotel to the start line. I arrived a bit after 6am, and tried to stay warm in a tent. I knew this part of the day would feel the coldest, and wished I had prepared some throwaway clothes to wear. I ate a free Clif bar, and was in my corral a bit before the start at 7am.</p>
<h2 id="heading-race">Race</h2>
<p>In the green corral, I started my run ~15 minutes after 7am. I ran behind the 3:50 pacer, who I planned to stick with for the entire race.</p>
<p>By mile 2, I had already eaten an energy gel and taken off my toque, which I tucked into my belt. Not long after, I took off my jacket, which can be folded up small enough to fit into a belt pocket. I regretted not having gloves though, since I had to keep my hands in the sleeves of my base layer for most of the first half of the race. The winds were brutal — at some point, someone’s glasses got blown off their head and almost hit me.</p>
<p>After the 10k mark, I was feeling strong, and pulled ahead of the pacer. There were many hills here, and I throttled the downhills to buy a lot of easy time. My pace was very ahead of my plan, which gave me some fears of bonking at the end, but I was still taking it relatively easy. No one else seemed to be using the downhills to jump ahead of other runners like I was, which was also worrying.</p>
<p>I had no pre-set plan for when to drink water, but I made sure to do so regularly, especially after the first 10k. I pinched the cup to form a spout to make it easier to drink, but I still managed to spill on my shirt more than once, which was pretty punishing in the cold weather. I also choked a bit more than once as well, so there’s a lot of room for improvement for my drinking technique. It may be worth it to slow down more.</p>
<p>My fueling strategy was to eat whenever I felt a pang of hunger, and during my 20-mile training run, this ended up being five gels equally spaced throughout, which is why I packed six. But before I was even half-way through the course, I had already eaten four. I decided this was not too bad, but I would have to grab the course-provided Gatorade gels and hope they agree with me.</p>
<p>Right around the halfway point, my Apple Watch died on me. This shook me briefly because I was using it to check my distance and pace, and now had to run purely on feel. I also wanted to keep listening to music during some stretches without crowds, and my girlfriend was using it to track my location. I had to shrug it off and focus more on keeping my pace up. I decided immediately that I would invest in a Garmin watch before my next race.</p>
<p>At mile 14, I saw my girlfriend cheering me on for the first time. I gave her my hat and told her my watch had died, and then kept speeding along. I was feeling really strong at this point. Not long after, the winds got even stronger, so I had to put my jacket back on, something I wasn’t expecting to need again. I saw my girlfriend again at miles 15 and 17. In general, the crowds were super encouraging. The race printed my name on the bib, so strangers could cheer me on by name, which was really helpful, especially when I started struggling.</p>
<p>My legs continued to feel great until mile 20. I could feel them giving out on me. I had bonked, but was determined to not take any walking breaks. Running was agonizing now, with the time between each mile marker feeling like an eternity. If I tried to push myself a bit harder, I could feel my leg start to cramp, so I had to back off and keep a much slower pace than I’d like. I saw my girlfriend again at mile 23, this time visibly struggling. It was as different as possible from the previous times I saw her, back when I was feeling on top of the world.</p>
<p>At some point, it was warm enough to put my jacket away again. I frequently needed to roll up my sleeves, bring them back down, and unzip and zip my quarter-sleeve to adjust to the weather, which varied a lot depending on the shade, and the changing winds.</p>
<p>Even though I didn’t feel hungry, I decided to try one of the Gatorade gels for the first time during the final stretch. The cherry lime flavor with that watery consistency was gross, but it gave me an instant boost in energy, allowing me to power through a mile or so. I wonder now if I could have taken even more of them to make those last miles a bit easier. My strategy of eating a gel when I felt hungry now seemed insufficient, since I ended up rarely feeling hungry in the second half of the marathon, but definitely needed more energy.</p>
<p>I kept thinking the finish line must finally be just ahead, only to not see it. After what felt like forever, I finally crossed the finish line.</p>
<h2 id="heading-post-race">Post-race</h2>
<p>I was happy that the 3:50 pace group never caught back up with me, but with a dead watch and no phone, I didn’t have an exact idea of my results right away. I also thought I was going to be sick. I grabbed a banana, some water, and some chicken broth, but could barely consume any of it. I felt light-headed, with a strong, unpleasant tingling sensation throughout my nose, something I never felt before. I thought I might throw up. I met up with a friend that finished before me, grabbed a blanket, and waited for the nausea to pass.</p>
<p>Eventually I felt okay, and had to ask strangers for their phone so I could contact my girlfriend. It was a struggle to meet back up with her with all the crowds, but after a while we were able to get on a convenient shuttle back to our hotel. It was only at this point that I learned my finish time, and I was ecstatic! I thought my sub 3:45 goal was too aggressive when I first set it a few months ago.</p>
<p>Back at the hotel, I took a long shower. We checked out and went to Reading Terminal Market, where we got a Philly cheesesteak and some Peking duck. For the next couple days, I couldn’t move very fast, especially going down stairs. But the recovery was surprisingly smooth, with no lasting issues.</p>
]]></content:encoded></item><item><title><![CDATA[Every Notable Pedestrian Bridge in New York City]]></title><description><![CDATA[As someone who enjoys running across bridges, I was surprised to find that there is no list of fun pedestrian bridge runs in New York City. At first, I wanted to document every single bridge in NYC, but this was impractical. So instead, I'm only list...]]></description><link>https://ericbai.co/every-notable-pedestrian-bridge-in-new-york-city</link><guid isPermaLink="true">https://ericbai.co/every-notable-pedestrian-bridge-in-new-york-city</guid><category><![CDATA[running]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Mon, 07 Nov 2022 02:42:13 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/unsplash/-sQ4FsomXEs/upload/v1667787577342/6dwmYTPNh5.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>As someone who enjoys running across bridges, I was surprised to find that there is no list of fun pedestrian bridge runs in New York City. At first, I wanted to document every single bridge in NYC, but this was impractical. So instead, I'm only listing every notable bridge, which I define as any bridge having <a target="_blank" href="https://en.wikipedia.org/wiki/List_of_bridges_and_tunnels_in_New_York_City">a Wikipedia article</a>.</p>
<h2 id="heading-methodology">Methodology</h2>
<p>To complete this list, I went through the list of all bridges on Wikipedia, and included all the bridges where:</p>
<ul>
<li>it is well-documented or common knowledge as being a pedestrian bridge</li>
<li>it has many authentic-looking reviews on Google maps mentioning walks across the bridge</li>
<li>or failing the above, I looked up map directions for walking to verify that the bridge is indeed walkable.</li>
</ul>
<p>This list is up to date as of November 13, 2022.</p>
<h2 id="heading-the-list">The List</h2>
<h3 id="heading-east-river">East River</h3>
<p>(south to north)</p>
<ul>
<li>Brooklyn Bridge</li>
<li>Manhattan Bridge</li>
<li>Williamsburg Bridge</li>
<li>Queensboro Bridge</li>
<li>Roosevelt Island Bridge</li>
<li>Robert F Kennedy Bridge (Queens span)</li>
</ul>
<h3 id="heading-harlem-river-and-bronx-kill">Harlem River and Bronx Kill</h3>
<p>Harlem River (south to north, east to west)</p>
<ul>
<li>Wards Island Bridge</li>
<li>Robert F Kennedy Bridge (Manhattan span)</li>
<li>Willis Avenue Bridge</li>
<li>Third Avenue Bridge</li>
<li>Madison Avenue Bridge</li>
<li>145th Street Bridge</li>
<li>Macombs Dam Bridge</li>
<li>High Bridge</li>
<li>Washington Bridge</li>
<li>University Heights Bridge</li>
<li>Broadway Bridge</li>
<li>Henry Hudson Bridge</li>
</ul>
<p>Bronx Kill</p>
<ul>
<li>Robert F Kennedy Bridge (Bronx span)</li>
</ul>
<h3 id="heading-hudson-river">Hudson River</h3>
<ul>
<li>George Washington Bridge</li>
</ul>
<h3 id="heading-newtown-creek-and-dutch-kills">Newtown Creek and Dutch Kills</h3>
<p>Newtown Creek (west to east)</p>
<ul>
<li>Pulaski Bridge</li>
<li>Greenpoint Avenue Bridge</li>
<li>Koscuiuszko Bridge</li>
<li>Grand Street Bridge</li>
</ul>
<p>Dutch Kills</p>
<ul>
<li>Borden Bridge</li>
</ul>
<h3 id="heading-other-in-the-bronx">Other in the Bronx</h3>
<p>Hutchinson River</p>
<ul>
<li>Pelham Bridge</li>
</ul>
<p>Eastchester Bay</p>
<ul>
<li>City Island Bridge</li>
</ul>
<h3 id="heading-other-in-brooklyn">Other in Brooklyn</h3>
<p>Gowanus Canal (north to south)</p>
<ul>
<li>Carroll Street Bridge</li>
</ul>
<p>Mill Basin</p>
<ul>
<li>Mill Basin Bridge</li>
</ul>
<h3 id="heading-other-in-queens">Other in Queens</h3>
<p>Rockaway Inlet</p>
<ul>
<li>Marine Parkway–Gil Hodges Memorial Bridge</li>
</ul>
<p>Jamaica Bay</p>
<ul>
<li>Joseph P. Addabbo Memorial Bridge</li>
<li>Cross-Bay Veterans Memorial Bridge</li>
</ul>
<h3 id="heading-staten-island">Staten Island</h3>
<p>Arthur Kill</p>
<ul>
<li>Goethals Bridge</li>
</ul>
<p>Kill Van Kull</p>
<ul>
<li>Bayonne Bridge</li>
</ul>
]]></content:encoded></item><item><title><![CDATA[How I got into Cannes Film Festival, and how you can too!]]></title><description><![CDATA[Cannes Film Festival is widely regarded as the most prestigious film festival in the world. It’s commonly where the year’s most critically acclaimed movies have their world premiere, making it a major incubator of hype for the films that end up winni...]]></description><link>https://ericbai.co/how-i-got-into-cannes-film-festival-and-how-you-can-too</link><guid isPermaLink="true">https://ericbai.co/how-i-got-into-cannes-film-festival-and-how-you-can-too</guid><category><![CDATA[Movies]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Mon, 07 Mar 2022 13:48:24 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/unsplash/XO4A1pWBEbE/upload/v1646281494329/cUTl1O9hs.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Cannes Film Festival is widely regarded as the most prestigious film festival in the world. It’s commonly where the year’s most critically acclaimed movies have their world premiere, making it a major incubator of hype for the films that end up winning big during awards season. The festival is invitation-only, primarily for folks in the industry and press. There are ways to attend without industry connections, and the best way, if you can qualify, is the “Three Days in Cannes” program. In this post, I'll share how I got accredited for this program.</p>
<p>The “Three Days in Cannes” program is only for those aged 18-28 years old. The program gets you into more exclusive films than the "Cannes Cinéphiles" program, the only other option for film enthusiasts. The only downside is that you're only able to attend for three days (the full festival is two weeks). For most though, three days is plenty. Especially with the hotel costs in Cannes!</p>
<p>The application requires writing a letter of motivation to demonstrate your passion for film and explain why you wish to attend. There is also a 20 euro fee that you pay during applying, but it will be refunded if you are rejected or choose not to attend.</p>
<p>For 2022, the application deadline is April 15. You should apply as soon as possible though, because they accept requests as they come in, and can run out of spots. I applied and got my acceptance within a few days! <a target="_blank" href="https://www.festival-cannes.com/en/participer/accredit#tab=accreditation-for-three-days-in-cannes"><strong>Click here to apply</strong></a><strong>.</strong></p>
<p>To help out those considering applying, you can read my letter of motivation. In general, I recommend describing how you dedicate your time to film as a hobby, and why the art-form is important to you.</p>
<hr />
<p>To Whom It May Concern,</p>
<p>Long before “cinephile” felt like part of my identity, I spent my youth’s summers going to the library to borrow old DVDs by the dozens. It was not a conscious choice to indulge in decades of cinema. It was, in my mind, just the most natural way for a child to pass the time. I had sometimes wondered if classics like <em>Apocalypse Now</em> or <em>Dr. Strangelove</em> were wasted on my pre-teen self, with much of them going over my head — but today, I know an early love for film has enriched my life endlessly.</p>
<p>As such, an accreditation to the “Three Days in Cannes” program would be a longstanding dream come true. I am a 26 year-old software engineer at a large tech company, with a Bachelor’s Degree in Computer Science from the University of Waterloo — so this dream to attend Cannes Film Festival is completely unrelated to my career goals. Rather, it is a deeply personal goal, as a lover of the arts, to participate in your event that brings together the world’s finest storytellers.</p>
<p>As an adult with a demanding full-time job, I can no longer binge movies from the library all day. Nonetheless, I still dedicate a large amount of time to film. I am a regular attendee at festivals like Toronto International Film Festival, New York Film Festival and Sundance. I keep a personal journal where I write reflections on every new movie I watch, and I share my favorites on my blog. Here are some of them:</p>
<ul>
<li><p><a target="_blank" href="https://ericbai.co/minari-an-exercise-in-empathy"><em>Minari</em></a></p>
</li>
<li><p><a target="_blank" href="https://ericbai.co/review-the-wind-rises"><em>The Wind Rises</em></a></p>
</li>
<li><p><a target="_blank" href="https://ericbai.co/review-parasite"><em>Parasite</em></a></p>
</li>
<li><p><a target="_blank" href="https://ericbai.co/review-the-farewell"><em>The Farewell</em></a></p>
</li>
</ul>
<p>I love how writing reflections allows me to engage with films on a deeper level. In one of my essays, <a target="_blank" href="https://ericbai.co/midsommar-and-the-farewell-bringing-eastern-values-to-western-film">“<em>Midsommar</em> and <em>The Farewell</em>: Bringing Eastern Values to Western Film”</a>, I describe how the 2019 films both contrast eastern and western values through grief. The protagonists change so much throughout the two stories, and allowed me to feel a seed of growth as well. I feel grateful for how films help me reflect not only on my personal experiences, but also the experiences of those totally different from me.</p>
<p>On top of cinema’s ability to help me self-reflect, movies have also provided me with a valuable community. I have made new friends through sharing my blog posts, and deepened friendships through going to the movies together. As my way of giving back to the cinephile community, I used my software engineering skills to create an endless movie trivia game called <a target="_blank" href="https://connectthestars.xyz/">Connect the Stars</a>, which I released for free. After sharing it with my friends, it became a small hit. Friends of friends have reached out to me about how they became hooked. Twitch streamers played it for their large audiences. The screenwriter John August (of films such as <em>Big Fish</em> and <em>Corpse Bride</em>) recommended it to readers of his newsletter. This engagement with the community has been incredibly rewarding, and I believe attending Cannes can help me foster even more connections.</p>
<p>Last year, I read <em>Making Movies</em> by Sidney Lumet. There is one part of the book that often comes back to me: Lumet describes how crucial it is that everyone in the production is “making the same movie”. That really distills what I love about movies. A singular creative vision brings together professionals of such varied skills — directing, screenwriting, acting, cinematography, editing, lighting, sound mixing, costuming, set production, and so on — to collaborate and make something beautiful.</p>
<p>And so, to participate at Cannes, at the forefront of these collaborations, would be a privilege and honor.</p>
<p>Sincerely,</p>
<p>Eric Bai</p>
<hr />
<p>For more guidance on the Three Days in Cannes program, see my other posts:</p>
<ul>
<li><p><a target="_blank" href="https://ericbai.co/the-ultimate-cannes-film-festival-guide-three-days-in-cannes">The Ultimate Cannes Film Festival Guide: Three Days in Cannes</a></p>
</li>
<li><p><a target="_blank" href="https://ericbai.co/three-days-in-cannes-2023-the-cannes-film-festival-experience-recapped">Three Days in Cannes 2023: The Cannes Film Festival Experience Recapped</a></p>
</li>
</ul>
]]></content:encoded></item><item><title><![CDATA[Making Connect the Stars]]></title><description><![CDATA[In October 2020, Amanda and I released Connect the Stars. This is the story of how it came together!
Inspiration
Like any good passion project, the inspiration for Connect the Stars is a unique mix of personal experiences. The first inspiration is a ...]]></description><link>https://ericbai.co/making-connect-the-stars</link><guid isPermaLink="true">https://ericbai.co/making-connect-the-stars</guid><category><![CDATA[projects]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Sun, 21 Nov 2021 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429202260/i44hPSiYT.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In October 2020, Amanda and I released <a target="_blank" href="https://connectthestars.xyz/">Connect the Stars</a>. This is the story of how it came together!</p>
<h2 id="heading-inspiration">Inspiration</h2>
<p>Like any good passion project, the inspiration for Connect the Stars is a unique mix of personal experiences. The first inspiration is a trivia game I played way back in 2015 at the Google office in Kitchener. I was a university student attending the Google Games, an annual recruiting event where Google invites students to compete in various puzzles and games.</p>
<p>One round in particular was my favourite — a trivia game that starts with an empty web-page with a few categories, like Disney characters. Your goal is to fill in these categories with examples, like Mickey, Minnie, Goofy… But when you enter in Pluto, you unlock a new category: the Solar System. So now you have a new category to start filling out: Mercury, Venus, and so on. This category can then unlock more categories like Roman Gods. Repeat this process enough, and soon the webpage is a huge, populated graph.</p>
<p>I absolutely killed it at this particular game, and our team went on to win the entire event. It was one of my favourite student experiences. I loved that trivia game — the way your answers unlock more questions, and the way you feel like you’re building something by filling in all that empty space. I never learned the name of the game, and never found more games like that online. I concluded that I would have to build this game myself. The ideal version of this game would have some way to generate endless instances of it, rather than one fixed puzzle. But how?</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429186522/wdoMJsG4y.png" alt="The Google Games 2015 champions! The theme was Space, so we called ourselves the KickAstronauts!" /></p>
<p><em>The Google Games 2015 champions! The theme was Space, so we called ourselves the KickAstronauts!</em></p>
<p>This question stayed in the back of my mind until late 2019, when <em>Parasite</em> by Bong Joon-ho became a worldwide phenomenon. I had always loved movies, but the line-up in 2019 made me really lean into it. Films like <em>Parasite</em>, <em>Portrait of a Lady on Fire</em>, and <em>Marriage Story</em> got me addicted to using Letterboxd to journal the movies I watch. In Letterboxd, you can quickly go from a movie to one of its actors, and then from that actor to another one of their movies — and after binging movies almost constantly throughout the pandemic, this mental web of movies and actors started culminating in my brain. When I recalled the Google trivia game from 2015, there was a clear idea here. I could play it endlessly, using movies and actors as the questions and answers! The way this idea combined my love for web dev, movies, and trivia games was too good to pass up.</p>
<h2 id="heading-getting-the-right-tools">Getting the Right Tools</h2>
<p>I had the idea in 2019, but didn’t really know how to make it into reality. I’m an experienced React developer, but otherwise I didn’t have the proper knowledge of what technologies to use.</p>
<p>In March 2020, I found out that Letterboxd uses a free API called <a target="_blank" href="https://developers.themoviedb.org/3/getting-started/introduction">The Movie Database</a> for all their movie data. The API provides everything you would need to make a movie app, and to this day I am astounded that it is free.</p>
<p>In July, after getting more settled into the quarantine lifestyle, I made a small web app called <a target="_blank" href="https://ericbai.co/mn-days-a-web-app-for-creating-lunar-calendar-events">MOON DAYS</a>. This little weekend project introduced me to the <a target="_blank" href="https://ant.design/">Ant Design Framework</a>, an open-source component library that does a lot of the heavy lifting to make polished components for common UI patterns. This was an important tool to learn to avoid needing to build the UI from scratch. Moon Days also gave me experience with hosting single-page web apps on Github.</p>
<p>The last major tool I needed was a graph visualization framework. I found that <a target="_blank" href="https://js.cytoscape.org/">cytoscape.js</a> was the most popular one, so I started learning it. Cytoscape provides highly customizable visualizations and animations, allowing me to make the actor and movie graph look exactly how I like. It also provides APIs to query the shortest path between two nodes, letting me detect when the player wins the game, or improves from their previous shortest path. I could start making my game!</p>
<h2 id="heading-early-product-and-development">Early Product and Development</h2>
<p>The core gameplay (a lobby to choose 2 actors, and then a game screen where you input text to populate the graph visualization) was all built in just one day. Here’s what the game looked like:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429188376/U9z4sLzz0.png" alt="An aearly prototype" /></p>
<p>The prototype name was Six Degrees, after the <a target="_blank" href="https://en.wikipedia.org/wiki/Six_Degrees_of_Kevin_Bacon">Six Degrees of Kevin Bacon</a>. There were no animations for adding a new movie or actor, so it looked really janky. The game didn’t tell you when you won. Choosing an actor in the lobby had no autocomplete, you just typed and pressed Submit and got whatever the top result was. And I was using all of the default UI stylings from the Ant Design Framework. It was cool to have a working game on day 1 — I had a blast finally being able to play it — but there was a lot more refinement needed.</p>
<p>On the second day of development, I started working on formatting the game layout more. I had to decide what the visual identity was, and I also had to come up with a name. Here’s a chat where I brainstormed names:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429189940/EWppY8MXx.png" alt="A chat where I brainstormed names" /></p>
<p>Looking back, the other names were pretty awful!</p>
<p>I knew I didn’t have the design chops to make a particularly beautiful UI, but I thought I could have fun with it by making the game look retro and edgy — a purposefully ugly in a vaporwave aesthetic. The result was an eyesore.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429191741/wK0-4zlSj.png" alt="A prototype with a vaporwave aesthetic" /></p>
<p>This took a few iterations of toning things down, so it was even uglier before this. I was hopeless when it came to styling this game in a way that would make people want to play. Here’s what the lobby looked like:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429193480/zCLYRXlFs.png" alt="An early version of the Connect the Stars homepage." /></p>
<p>Adding the moving constellation background was a good idea, but obviously there was still a lot to be desired.</p>
<p>Notice in the lobby screenshot that I added the most important quality-of-life feature: the “Choose For Me” button. From play-testing with close friends, I found that no one wants to choose the actors themselves. Choose For Me provides a random actor from a curated list of over 100 well-known names. While you stay on the website, it will remember which ones you’ve already seen and make sure not to repeat any. From seeing everyone play the game, this feature is practically always used.</p>
<h2 id="heading-amanda-designer-of-connect-the-stars">Amanda, Designer of Connect the Stars</h2>
<p>My most fateful play-testing session was with my friend David. David wasn’t particularly good at movie trivia, so they’d often ask their partner Amanda for help. Amanda, who happens to be a professional designer, turned out to be a natural at the game.</p>
<p>I thought about how much Amanda “got” the game right away and understood its appeal. In mid-August, while I was on a trip with my family, I asked her to help me redesign the game. I wanted to work on Connect the Stars as soon as I was back from my trip, and figured that, if she said yes, she would need to find some free time and take a while to put things together. To my surprise, she put together some mocks the same evening that I asked her for help! I had spotty internet during all this, so it was only after I got back home that I looked at the designs and loved them right away.</p>
<p>The rest of the development of Connect the Stars was on-and-off over the course of almost two months, during which Amanda and I would bounce ideas off each other and polish the design over and over again. Amanda crafted the website’s appearance to have a refined, awards-ceremony vibe. The colours are now way better, there’s now so much more iconography, and everything looks classy. An aesthetic totally opposite of what I had envisioned, but vastly superior.</p>
<p>Amanda also made the logo. We went through a lot of options, as pictured here:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429194941/FVNiZhn2F.png" alt="A brainstorm of logo icons" /></p>
<p>The top-left was the original icon I had made for the vaporwave aesthetic, and the rest were options that Amanda proposed. I really wanted us to convey both the words “connect” and “stars”, so we went with the one that was basically the combination of the star ⭐️ and link 🔗 emojis. We made both stars gold to look good on light and dark themes.</p>
<p>Amanda also made the gorgeous OG image (the big image attached when you share the link on Facebook) as well as the amazing promo images in our <a target="_blank" href="https://www.producthunt.com/posts/connect-the-stars">ProductHunt post</a>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429197235/QtHl3NxBr.png" alt="Product Hunt Promo image part 1" /></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429198928/2KJpiNKIu.png" alt="Product Hutn Promo image part 2" /></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429200562/KQLW23Tqx.png" alt="Product Hunt promo image part 3" /></p>
<h2 id="heading-more-quality-of-life-refinements">More Quality-of-Life Refinements</h2>
<p>Connect the Stars tries to make the game purely about movie trivia, and so there were some features to help get rid of frustrating scenarios:</p>
<ul>
<li>The previously mentioned “Choose For Me” button, so that the user doesn’t have to come up with who to start the game with.</li>
<li>Spelling suggestions: If your guess closely matches one of the movies or stars that can be connected to your board, we show a little pop-up telling you what we think you meant, and you can then add it to your board. This is done using <a target="_blank" href="https://en.wikipedia.org/wiki/Approximate_string_matching">fuzzy string searching</a>. We also don’t care about the word “the”, accent marks, punctuation, and so on.</li>
<li>Recognizing alternate titles: People might know the movie Harley Quinn movie <em>Birds of Prey</em>, but no one knows its actual title, <em>Birds of Prey (and the Fantabulous Emancipation of One Harley Quinn)</em>. When a title has a colon, dash, or bracket in it, we look up alternate names and accept those.</li>
<li>The compass button: We let you pan and zoom around the screen, but then you might lose your graph! The compass button lets you find your graph again.</li>
<li>In order to look nice, the graph visualization needed to be configured to use up as much space as possible before needing to be zoomed out. By default, the graph tended to grow taller rather than wider, even though most people have wider screens. I had to find a graph layout algorithm that let me customize the “gravity”. I use the width and height of the screen to compute an optimal gravity; wider screens have a stronger horizontal gravity, and taller screens have a stronger vertical gravity.</li>
</ul>
<h2 id="heading-the-lets-play-video">The Let’s Play Video</h2>
<p>Amanda and I were just about ready to share the game with others, but we recognized that playing the game was asking for a lot of people’s time, and reaching a point where you “get” the game might never happen. For those people, we thought we could still share the game with them in the form a <a target="_blank" href="https://www.instagram.com/tv/CGdSboOB1cy/">Let’s Play video</a>. Amanda used OBS, the software that Twitch streamers use, to set up a recording of her game and our Zoom call, and we would play a bunch of games to show how the game works. It was fun to make, despite frustrating technical issues, and Amanda did a great job of putting together the video!</p>
<p>My favourite part of the video is the easter egg at the end: I added a surprise in the game and I’m so glad we recorded Amanda’s reaction to it.</p>
<h2 id="heading-gaining-users">Gaining Users</h2>
<p>On release day, Amanda and I shared the game to our personal social networks and to Product Hunt. We got tons of lovely feedback from friends and strangers — it was a great day.</p>
<p>Besides release day, there were a few other moments when Connect the Stars saw larger audiences:</p>
<ul>
<li><a target="_blank" href="https://twitter.com/ProductHunt/status/1363428265600442372">ProductHunt tweeted about the game</a>. This tweet caused a lot of attention on Twitter, and tons of celebrity stan accounts played the game.</li>
<li>Some <a target="_blank" href="https://forum.rocketbeans.tv/t/connect-the-stars-movie-trivia-spiel/92064">German forum really enjoyed the game</a>, and caused a surprising amount of traffic.</li>
<li>John August, the screenwriter who wrote movies such as <em>Charlie’s Angels</em>, <em>Big Fish</em>, <em>Charlie and the Chocolate Factory</em>, and <em>Corpse Bride</em>, shared a recommendation to Connect the Stars <a target="_blank" href="https://us9.campaign-archive.com/?u=2b0232538adf13e5b3e55b12f&amp;id=5162f12b8c">in his newsletter</a>. It was very exciting to see folks in the industry enjoy the game!</li>
<li>The most viral Connect the Stars ever got, by far, was when I posted it to the <a target="_blank" href="https://www.reddit.com/r/Letterboxd/comments/n7oirj/i_built_a_neverending_game_to_test_your_movie/">Letterboxd subreddit</a>. It felt great that the Letterboxd community, who inspired the game in the first place, also enjoyed it the most.</li>
<li>Girls Play, a Twitch stream with 71K followers, <a target="_blank" href="https://m.twitch.tv/videos/1195079137">played Connect the Stars one day</a> (skip to 55:25). They ended up playing for almost 2 hours!</li>
<li>There was also some viral moment that happened in Argentina, but I have never been able to find the exact place where it started. It was the second-largest spike of users ever!</li>
</ul>
<h2 id="heading-whats-next">What’s Next?</h2>
<p>I still work on the website on-and-off whenever inspiration strikes. I recently added a new options menu to change the pool of “Choose For Me” actors. I wanted to make the game better for niche communities who want to play with more obscure actors, Bollywood actors, or actors from before the 1970s.</p>
<p>I don’t have a clear end-goal from this project, I just enjoy making something that I personally find fun. I hope the story of Connect the Stars inspires other software developers to pursue creative projects for the joy of it, too. Creating apps and websites for the communities you love (in this case, the film community) helps keep the internet full of serendipitous fun.</p>
]]></content:encoded></item><item><title><![CDATA[Self-Fulfillment Versus Ego]]></title><description><![CDATA[Everyone has a desire for some abstract “more”. The trick is to figure out which of these desires are healthy. Using Maslow’s Hierarchy of Needs, the first few levels are easy to understand. We need survival and stability before more advanced needs.
...]]></description><link>https://ericbai.co/self-fulfillment-versus-ego</link><guid isPermaLink="true">https://ericbai.co/self-fulfillment-versus-ego</guid><category><![CDATA[journal]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Mon, 25 Oct 2021 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429205714/yokB51fqF.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Everyone has a desire for some abstract “more”. The trick is to figure out which of these desires are healthy. Using <a target="_blank" href="https://en.wikipedia.org/wiki/Maslow%27s_hierarchy_of_needs">Maslow’s Hierarchy of Needs</a>, the first few levels are easy to understand. We need survival and stability before more advanced needs.</p>
<p>Love/belonging and esteem are a bit more complicated. It’s pretty clear-cut what these things are, and totally neglecting these would be bad. But everyone has different levels of how much they need these two. Some are perfectly happy with less esteem than others, for example. That’s the distinction here from the previous physiological needs.</p>
<p>Self-actualization is the most interesting: it’s incredibly open-ended. What is the best way for someone to be the best version of themselves? Let’s explore a few categories, from most egotistical to least:</p>
<ul>
<li>Having an exciting and romantic life: seeking adventure, or making a mark on the world, having an interesting life story. I think these are all very egotistical. You have a narrative in your head where you are the protagonist and you try to bend reality to be consistent with it. What does this really accomplish? It’s very self-serving. Arguably, this isn’t self-actualization at all, and seeking this out means you’re still stuck on gaining esteem.</li>
<li>Mastering a skill or craft: whether it be athletic, creative, business, or etc. This is not as egotistical — first and foremost, you are putting the craft before yourself. You are trying to express something that isn’t so much about you. Nonetheless, it’s hard to decouple your ego from your skills.</li>
<li>Making the world a better place: enriching the lives of the people around you. Being generous and virtuous. This is not egotistical at all. Maslow calls this transcendence, and revised versions of the hierarchy place this above self-actualization.</li>
</ul>
<p>I think we all need to manage our egos to an extent, so the first one is always going to be around. But it’s the other two where you are living in accordance with the real world. It’s more spiritually fulfilling to work towards something with tangible results outside of your head.</p>
<p>By thinking of self-fulfillment in this way, we can more intentionally become the kind of person that makes the world a better place.</p>
]]></content:encoded></item><item><title><![CDATA[Minari — An exercise in empathy]]></title><description><![CDATA[Minari, directed by Lee Isaac Chung, shares an adapted version of Chung’s childhood in the vast farmland of Arkansas. The story touches on how a first-generation immigrant child starts grasping their Korean-American identity. At the same time, the fi...]]></description><link>https://ericbai.co/minari-an-exercise-in-empathy</link><guid isPermaLink="true">https://ericbai.co/minari-an-exercise-in-empathy</guid><category><![CDATA[Movies]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Sun, 28 Feb 2021 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429209040/SSHP8n6kr.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Minari</em>, directed by Lee Isaac Chung, shares an adapted version of Chung’s childhood in the vast farmland of Arkansas. The story touches on how a first-generation immigrant child starts grasping their Korean-American identity. At the same time, the film shows how their parents struggle to make a living while integrating with an unfamiliar Western culture. These two journeys are both turbulent, and yet the story is overflowing with familial love. The final result is a gorgeously fleshed out microcosm of the American immigrant experience.</p>
<p>The film centers on parents Jacob (Steven Yeun) and Monica (Han Ye-ri), and their young children, David (Alan Kim) and Anne (Noel Kate Cho). The family moves to Arkansas on Jacob’s insistence that they can make a living for themselves by starting a farm. Monica is less than happy about this arrangement, preferring to be closer to the city. To pacify Monica’s discontent, her mother, Soonja (Youn Yuh-Jung), moves in with them.</p>
<p><em>Minari</em> focuses on two main character arcs. First, seven-year-old David, who knows more about America than Korea, hates that he must share his bedroom with his grandmother, a stranger he has never met before. David initially clashes with his grandmother over unfamiliar food, unfamiliar smells, and the unmet Western expectations of what a grandmother should be. David’s antics to antagonize his grandmother show his frustrations about suddenly having to learn more about what being Korean means.</p>
<p>The second character arc is that of the patriarch Jacob. He stubbornly insists on doing everything his way — he scoffs at the Americans who offer their help with running his farm. Despite Monica’s constant grievances over how his choices affect the rest of the family, Jacob put his crops first. In one instance, he uses up all of the family’s running water. Jacob reasons that, once he succeeds in getting the farm running, his family will never have to worry about money again. The temporary burdens are worth it.</p>
<p>In one of the film’s most revealing scenes, Monica confronts Jacob about how risky his gamble on the farm is for their children’s future, and Jacob admits that ”[the children] need to see me succeed at something for once.” Suddenly, Jacob’s stubbornness falters from the noble façade he presented before — the farm is important for his own pride, and is not just about being a good father and husband.</p>
<p>Jacob and David’s character arcs are both about the struggle to outgrow their ego in order to live up to their responsibilities to their family. David begins to accept his Korean identity while Jacob begins to accept a more American way of life. The two arcs complement each other and culminate together beautifully.</p>
<p>These character arcs describe the more overarching ideas behind the story, but it’s the beautifully little moments within <em>Minari</em> that elevate it to be something special. One particular scene that stood out: When Soonju arrives, she brings Korean spices and anchovies that are hard to find in America. Monica is moved to tears as she smells and touches these precious tokens of a far away home. This exchange lasts just a moment, but it’s one of many instances where Chung demonstrates how small, personal details are the key ingredient for poignant storytelling. Every moment rang true.</p>
<p>Perhaps my favorite aspect of <em>Minari</em> is the fact that it is an exercise in empathy. Chung, now a father himself, created this film to look back on his childhood to try and understand what his parents were going through to give him a better life. In doing so, he asks the audience to expand their horizons through empathy as well.</p>
]]></content:encoded></item><item><title><![CDATA[Connect the Stars — An endless movie trivia game]]></title><description><![CDATA[I’ve watched 117 films so far in 2020. There’s something about how young the medium of a feature film is — they’ve only been around for a bit more than a century! — that fools people like me into thinking it’s possible to watch every single great mov...]]></description><link>https://ericbai.co/connect-the-stars-an-endless-movie-trivia-game</link><guid isPermaLink="true">https://ericbai.co/connect-the-stars-an-endless-movie-trivia-game</guid><category><![CDATA[projects]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Fri, 16 Oct 2020 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429216856/lAK5S2F1w.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I’ve watched 117 films so far in 2020. There’s something about how young the medium of a feature film is — they’ve only been around for a bit more than a century! — that fools people like me into thinking it’s possible to watch every single great movie ever made. I wanted to create something for myself and others like me who watch way too many movies. Something to show off all the useless trivia we accumulate about movies and the people in them.</p>
<p>And so, <a target="_blank" href="https://www.amandahum.com/">Amanda</a> and I made a movie trivia game called <a target="_blank" href="https://connectthestars.xyz/"><strong>Connect the Stars</strong></a>! If you enjoy answering “What movies was she in?” and “Who was in that movie again?”, you’ll like this game. Connect the Stars is best enjoyed with a group of friends, or challenge yourself by playing solo if you’re a big movie buff.</p>
<h3 id="heading-try-it-out-connectthestarsxyzhttpsconnectthestarsxyz">Try it out: <a target="_blank" href="https://connectthestars.xyz/">connectthestars.xyz</a></h3>
<p>This game is optimized for desktop, but the mobile layout works well too. Here’s a simple example of how a game might go: You start off with two movie stars, like Samuel L. Jackson and Joaquin Phoenix, and you list what films they are in. The goal is to keep listing films and actors until you connect the stars!</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429213174/6aZVMGDwZ.png" alt="A game of Connect the Stars" /></p>
<p>Sometimes I even learn more about movies by playing this game. For example…</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429215108/BqPhnzCi8.png" alt="Another game of Connect the Stars" /></p>
<p>Did anyone realize you could connect Michael Jordan and LeBron James through their filmographies using only one other actor? And that that actor is Danny DeVito???</p>
<p>If you want to play the game at this point but need some inspiration for pairs of movie stars to play with, may I suggest:</p>
<ul>
<li>Emma Stone and Dwayne Johnson (a Stone and the Rock… how hard could it be?)</li>
<li>Kevin Bacon and Jon Hamm (they surely have lots of meaty roles for you to remember!)</li>
<li>Steve Carell and John Krasinski (The Office won’t help you here, films only!)</li>
</ul>
<p>Last but not least: Amanda and I even filmed a Let’s Play video to introduce Connect the Stars to our friends. Check it out on my Instagram.</p>
<p>If you play the game, we would love to know what you think!</p>
]]></content:encoded></item><item><title><![CDATA[M◐◑N DAYS — a web app for creating lunar calendar events]]></title><description><![CDATA[My dad celebrates his birthday according to the Chinese calendar, but calendar apps don’t support recurring lunisolar events. I figured I can’t be the only one who thinks this should be better supported, so I decided to build a web app: M◐◑N DAYS.
Cl...]]></description><link>https://ericbai.co/mn-days-a-web-app-for-creating-lunar-calendar-events</link><guid isPermaLink="true">https://ericbai.co/mn-days-a-web-app-for-creating-lunar-calendar-events</guid><category><![CDATA[projects]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Fri, 10 Jul 2020 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429219782/Gc3TMJxoC.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>My dad celebrates his birthday according to the <a target="_blank" href="https://en.wikipedia.org/wiki/Chinese_calendar">Chinese calendar</a>, but calendar apps don’t support recurring lunisolar events. I figured I can’t be the only one who thinks this should be better supported, so I decided to build a web app: M◐◑N DAYS.</p>
<h3 id="heading-click-here-to-open-mn-dayshttpsbaiericgithubiomoondays"><a target="_blank" href="https://baieric.github.io/moondays/">Click here to open M◐◑N DAYS.</a></h3>
<p>You just fill in some normal calendar event creation data, and get that translated into a file containing annual events that can be imported into your favourite calendar app. M◐◑N DAYS works for not just the Chinese calendar, but any <a target="_blank" href="https://en.wikipedia.org/wiki/Lunisolar_calendar">lunisolar calendar</a> based off of it, like the Korean calendar.</p>
<p>After sharing this project with friends, I got to learn more about their relatives who also celebrate birthdays according to the Chinese calendar. Several of them even decided to research and learn more about how the Chinese calendar works, which I found really sweet.</p>
<p>The app took about two or three evenings after work to build.</p>
]]></content:encoded></item><item><title><![CDATA[Review — Minor Feelings: An Asian American Reckoning]]></title><description><![CDATA[Essential reading for Asians, but more importantly, essential reading for non-Asians.
Hong's prose is powerful. She oscillates between a procedural, detached tone and then a poetic tone that will catch you off-guard with a perfect, complex metaphor. ...]]></description><link>https://ericbai.co/review-minor-feelings-an-asian-american-reckoning</link><guid isPermaLink="true">https://ericbai.co/review-minor-feelings-an-asian-american-reckoning</guid><category><![CDATA[books]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Fri, 03 Jul 2020 04:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641517982866/IUePV3NJd.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Essential reading for Asians, but more importantly, essential reading for non-Asians.</p>
<p>Hong's prose is powerful. She oscillates between a procedural, detached tone and then a poetic tone that will catch you off-guard with a perfect, complex metaphor. These conflicting tones work well together, usually by introducing cold, hard facts and then the deeply personal consequences of those facts.</p>
<p>The first essay "United" played with my emotions. Hong admits to being a self-hating Asian, her identity warped by fixating on how white people view her Asian-ness. I'm both sympathetic and weary of self-hating Asian Americans; I feel like they are over-represented in the arts precisely because they are the type who can tolerate or even enjoy being the only Asian in a predominantly white room. For them to represent all Asians is clearly not ideal, since then non-Asian people only see Asians who struggle to — or do not even try to — decenter whiteness from their lives. This struggle is common and very much worth exploring, but I hope people don't think it ubiquitous, nor is it necessarily a lifelong struggle with no end.</p>
<p>Hong's self-hate by no means hinders the clarity of her thoughts. She's acutely aware of the complexities of race and embraces it in her writing. She never over-simplifies, and navigates the complexities with confidence. She expertly explains being white, being Black, being Asian, and the dynamics between each of these identities. She emphasizes that "Asians are both the victims and perpetrators of racism." I especially enjoyed the essay "The End of White Innocence," since whiteness cannot be examined enough when we talk about being Asian or Black. "Innocence is both a privilege and a cognitive handicap, a sheltered unknowingness that, once protracted into adulthood, hardens into entitlement."</p>
<p>Hong's writing is at its best when it's the most personal. "An Education" is perhaps my favourite essay in the book. It explores Hong's friendship with two other Asian-American women throughout university. All three are artists, and I absolutely adored reading about the development of each woman's artistic vision. The process of creative growth is just inherently fascinating, and Hong takes us through this process intimately, even when her relationships with her friends become tumultuous.</p>
<p>The author's final essay, "Indebted," is her at her most scathing. Her criticisms of America are poignant and incisive. It's also the first time I've heard about Yuri Kochiyama, a Japanese-American civil rights activist with close ties to Malcolm X. In fact, she is the only other face visible in the famous photo of his assassination, cradling his head. I got goosebumps learning about her.</p>
<p>To be Asian in America (or in Canada) involves learning how to integrate our identities into a landscape that wants to unnaturally compartmentalize us. This landscape is constantly changing; Hong is almost twenty years older than me, and so her experiences differ from mine. We need to be aware of the long chain of history that has led to this landscape, and <em>Minor Feelings</em> is a valuable link in that chain.</p>
<p><em>Originally published on  <a target="_blank" href="https://www.goodreads.com/review/show/3325974430">Goodreads</a> .</em></p>
]]></content:encoded></item><item><title><![CDATA[Why I Write]]></title><description><![CDATA[Our bodies were never built to to contain all our thoughts and feelings. These thoughts and feelings overflow out of us, into our friends and family, into our creative outlets, into any container larger than ourselves. (sometimes into our therapists,...]]></description><link>https://ericbai.co/why-i-write</link><guid isPermaLink="true">https://ericbai.co/why-i-write</guid><category><![CDATA[journal]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Wed, 24 Jun 2020 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429222640/19qzfCqdP.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Our bodies were never built to to contain all our thoughts and feelings. These thoughts and feelings overflow out of us, into our friends and family, into our creative outlets, into any container larger than ourselves. (sometimes into our therapists, if you’re able to afford one!)</p>
<p>There is an imbalance of what is inside and outside of you. Writing corrects this by allowing you to externalize your inner self, and through the process of writing, you gain further clarity as to what it was you wanted to externalize.</p>
<p>I used to think of writing as primarily a form of communication. Why would I write an essay if I did not have a unique, valuable idea or vantage-point to share with others? This question discouraged me from starting or sharing my writing — plenty of better writers have already articulated what I wanted to say. It turns out I was focusing too much on the end-goal and not enough on the enjoyable process itself. After getting into the habit of writing private essays (or diary entries, or journal entries, or whatever), I now appreciate how writing is so much more than a form of communication. Writing is no longer primarily for others, it’s primarily for myself.</p>
<h2 id="heading-writing-helps-organize-what-you-already-know">Writing helps organize what you already know</h2>
<p>I have so many ideas and values that I understand much better after writing them out. The act of writing forces you to confront how unorganized your knowledge is when it’s just inside your brain. Refining a piece of writing declutters your thoughts. It’s like housekeeping for your brain. Much like how it’s easier to find things in a clean house, you become better at recalling and communicating your thoughts to others afterward. <strong>The most important benefit of writing, by far, is how it provides you more clarity over your own thoughts.</strong> Every other benefit is a corollary of this.</p>
<p>(Also, all good writing stems from clarity of thought. Good writing can come in all sorts of formats and use all sorts of techniques and styles. But the first step is always the clarity.)</p>
<h2 id="heading-writing-helps-you-learn-new-things">Writing helps you learn new things</h2>
<p>Once your thoughts are more organized, you can easily see how little you actually know about a topic. Sometimes, you immediately gain new insights just from seeing a more organized version of your thoughts. More commonly, there will be various gaps of knowledge that are now obvious, and you can then research to fill those gaps. In this way, the process of writing makes you smarter.</p>
<p>If you want to learn something new or understand something better, write an essay, story, or poem about it. I highly recommend writing a reflection after (or even during) every book you read or movie you watch. Reflect on everything to make sure you fully synthesize it.</p>
<h2 id="heading-writing-is-therapeutic">Writing is therapeutic</h2>
<p>Often, I write because of some anxiety. What recurring thoughts are eating at my mind? Why are they overwhelming? And then, once I’ve written out the answers to these questions, it’s all laid out in front of me. It suddenly becomes much less overwhelming than I thought. Writing will help you understand yourself and others better. You never need to share your writing, or even ever read it again after you’re done, to benefit from the process.</p>
<h2 id="heading-writing-is-efficient">Writing is efficient</h2>
<p>I don’t think any of the above benefits are specific to writing. In fact, any creative process (by which I mean any transfer of ideas, thoughts, and feelings into an external medium) can help you accomplish these benefits, but writing is the most economical. Economical in the sense that outputting and organizing words is cheaper and easier than other forms of creative expression, as well as the fact that writing only involves yourself, so you are not expending the time and labour of others.</p>
<hr />
<p>…And yes, after writing a lot you do end up becoming a better communicator. But the real benefit is becoming a better thinker, and better communication is just a natural result afterward.</p>
<p>Ted Chiang describes writing as the first ever augmentation of the human brain. He even goes as far to say that we have been cyborgs ever since we learned to write. Before writing, we could never refine our thoughts, organize our ideas, remember things at scale, or communicate asynchronously. It’s the most valuable technology ever invented. Let’s leverage it to the fullest.</p>
]]></content:encoded></item><item><title><![CDATA[Three Years of Melodrama]]></title><description><![CDATA[On this day three years ago, Lorde released her sophomore album Melodrama. It’s hard to articulate how meaningful Melodrama has been to me—it’s my favourite album of all time, and whatever is second place doesn’t come close. I remember the year the a...]]></description><link>https://ericbai.co/three-years-of-melodrama</link><guid isPermaLink="true">https://ericbai.co/three-years-of-melodrama</guid><category><![CDATA[projects]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Tue, 16 Jun 2020 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429225353/8n_mmLlyg.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>On this day three years ago, Lorde released her sophomore album <em>Melodrama</em>. It’s hard to articulate how meaningful <em>Melodrama</em> has been to me—it’s my favourite album of all time, and whatever is second place doesn’t come close. I remember the year the album came out: playing it on repeat every day, seeing Lorde at Osheaga in Montreal, and seeing her again at the Melodrama World Tour in Toronto.</p>
<p>To celebrate the album, I made a webpage adaptation of the lyrics booklet that comes with the physical CD.</p>
<p><a target="_blank" href="https://baieric.github.io/melodrama/"><strong>Click here to open Eric’s <em>Melodrama</em> webpage.</strong></a></p>
<p>It’s mobile friendly but I prefer it on desktop. It was a pleasure to make, I hope you enjoy. The rest of this post is just some tidbits on the making-of!</p>
<hr />
<p>When I listen to music with really good songwriting, I sometimes want to read the lyrics as I listen along. Any lyrics site like Genius is good enough normally, but for listening to an album front-to-back, navigating between songs is quite annoying. It would be amazing if lyrics websites offered a full-album view!</p>
<p>While looking for the best lyrics-viewing experience, I found <a target="_blank" href="https://imgur.com/r/lorde/MmsGz">high-quality scans of the <em>Melodrama</em> album booklet on Imgur</a>. This was a high-fidelity format for reading lyrics, but not so suitable for the web, so I decided to adapt it into a webpage. This project would not have been possible without these scans from Reddit user u/Hawkachino.</p>
<p>I transcribed the lyrics from the scans myself rather than copying the lyrics from a lyrics site. This was important for capturing the various idiosyncrasies of the “official” lyrics: the particular usage of punctuation (like the use of brackets and em-dashes), the formatting (the line breaks, the italics), and even the choice of spelling (e.g. “tryna”, “i”). They were clear stylistic choices that I wanted to preserve as much as possible. This was actually a fun experience—it allowed me to dwell on each word and turn of phrase. Good writing is worth poring over.</p>
<p>Unlike most lyrics sites, the official lyrics don’t repeat any refrains or choruses. I like this choice because it allows the lyrics to read more like a poem—they stand up well on their own without the music. There’s one instance of a refrain in “Supercut” where Lorde changes the line “I’m someone you maybe might love” to “Slow motion, I’m watching our love”, and the official lyrics don’t include it. Besides that, the booklet records every single line.</p>
<p>The rest of the process was just formatting the CSS to be true to the booklet, using Photoshop to grab the song titles, and grabbing the images from a combination of the scans and the original photos from <a target="_blank" href="https://www.artpartner.com/artists/film-print/theo-wenner/archive/story/lorde-melodrama-album-art/">the photographer’s website</a>. I used the font Canela, which is also used in the <em>Melodrama</em> vinyl song list (thanks Sharon for finding the font for me!).</p>
<p>I hope others who love <em>Melodrama</em> and love reading along to the lyrics will find this useful! Melodrama forever.</p>
]]></content:encoded></item><item><title><![CDATA[Review: The Wind Rises]]></title><description><![CDATA[I learned about the origins of the name Ghibli yesterday. From Wikipedia:

The name Ghibli was given by Hayao Miyazaki from the Italian noun ghibli, based on the Libyan-Arabic name for the hot desert wind of that country, the idea being the studio wo...]]></description><link>https://ericbai.co/review-the-wind-rises</link><guid isPermaLink="true">https://ericbai.co/review-the-wind-rises</guid><category><![CDATA[Movies]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Sun, 24 May 2020 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429228229/NA7tmuK70.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I learned about the origins of the name Ghibli yesterday. From Wikipedia:</p>
<blockquote>
<p>The name Ghibli was given by Hayao Miyazaki from the Italian noun ghibli, based on the Libyan-Arabic name for the hot desert wind of that country, the idea being the studio would “blow a new wind through the anime industry.” It also refers to an Italian aircraft, the Caproni Ca.309 Ghibli.</p>
</blockquote>
<p>The motifs of wind and aircraft (and even Caproni) are put in the forefront in this film. Miyazaki’s reverence for the craft of building an airplane provides some clear analogies to the craft of animation, and the act of creation in general. We see this in Jiro’s dreams, in his hard work, and my favourite bit was in the depiction of Jiro’s “flow state”, where he’s fully concentrated on his work and everything else fades into the background, and he and his desk are flying through the air.</p>
<p>“Artists are only creative for 10 years … we engineers are no different. Live your 10 years to the full.” What an audacious thing for the film to say after Miyazaki has put out banger after banger since 1979.</p>
<p>This is a unique Miyazaki in that it’s grounded in the real world, and about real people. And yet the fantasy element is still there, because the real world is just as wondrous. I’ve read some Miyazaki quotes where he often thinks about his intended audience when choosing the subjects of his films. He wants to make films for children of this age range, or that age range. <em>The Wind Rises</em> doesn’t feel like a children’s film at all. It feels like a film that Miyazaki made for himself, and I love that a lot. Jiro looks up to Caproni the same way that Miyazaki looks up to Jiro. It’s really fascinating to think about how so much creation is built on the shoulders of giants.</p>
<p>(It’s certainly a bit uncomfortable to romanticize the creation of warplanes, but I think it’s possible to acknowledge that without detracting from the beauty of this film.)</p>
<p>Miyazaki has always seemed uninterested in depicting adult romance in his previous works, so it was a delightful surprise that we got to witness some here. The genre-shift into romance for the second half of the film felt completely natural, and there were so many touching moments that made my heart feel full.</p>
<p>Jiro’s constant kindness to others shows us that dedicating your life to your individualistic dreams is not necessarily incompatible with providing care and tenderness to others. Take notes, Damien Chazelle.</p>
<p>4.5 / 5 stars.</p>
<p><em>Originally posted to my <a target="_blank" href="https://letterboxd.com/ericbai/film/the-wind-rises/">Letterboxd</a>.</em></p>
]]></content:encoded></item><item><title><![CDATA[How I Find Movies]]></title><description><![CDATA[When the topic comes up about how film is a big hobby of mine, the first question I get asked is what my favourite movies are. This one I never have a good answer for. Choosing just one feels so wrong to me! The next most common question is how I kno...]]></description><link>https://ericbai.co/how-i-find-movies</link><guid isPermaLink="true">https://ericbai.co/how-i-find-movies</guid><category><![CDATA[Movies]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Wed, 06 May 2020 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429234914/t3iLoRojB.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>When the topic comes up about how film is a big hobby of mine, the first question I get asked is what my favourite movies are. This one I never have a good answer for. Choosing just one feels so wrong to me! The next most common question is how I know what movies to watch. This post tries to answer that. I’m not sure if it serves as a particularly useful guide, but hopefully I can at least give some insight into a process that I enjoy.</p>
<p>I used to rely on RottenTomatoes scores a lot, but now I basically never look at aggregators. I almost never watch trailers, and sometimes I don’t even know what genre the movie is going to be before it starts. I usually don’t choose movies based on what actors are in them, either. These are some common ways films are marketed, yet I find the signal-to-noise ratio way too high. The only (somewhat) commonly marketed signal that I do find reliable would be the director. I think the key is to read more about your favourite films, and then follow the critics and entertainment writers whose writing you like. Which leads me to…</p>
<h2 id="heading-the-film-community">The Film Community</h2>
<p>I think the most obvious piece of advice that you’ll hear about any hobby is, find a community! I follow a lot of directors, film societies, entertainment writers, and amateur and professional film critics on Twitter and an app called Letterboxd. Letterboxd is the app I use to record what films I watch, keep a watchlist of films I want to watch, and read reviews and lists. Think of it as Goodreads for movies, though I personally think Letterboxd’s UI is way better. I love the app a lot.</p>
<p><a target="_blank" href="https://letterboxd.com/ericbai/">Check out my Letterboxd profile!</a></p>
<p>Just by passively reading Film Twitter tweets and Letterboxd reviews, you get a good sense of (1) what upcoming movies are anticipated and (2) what past movies you need to stream. Plus, there’s a lot of great memes.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429231430/3G4JOWPmB.jpeg" alt="The best letterboxd list" /></p>
<p>The community does quite a bit of the work for you, but there’s a lot more you can do as well.</p>
<h2 id="heading-finding-upcoming-movies">Finding Upcoming Movies</h2>
<p>This section isn’t super relevant during quarantine, since we’re not going to get huge movie releases in theatres for a while. Still, figuring out what movies are going to be big before they’ve even hit theatres is so exciting! The first thing you need to know is how movies get released.</p>
<p>Most highly anticipated films premiere at <strong>film festivals</strong>. Unless you’re in the film industry or a professional film critic, this is the earliest possible time that you can watch a movie. The most prestigious film festivals are: the Cannes Festival, the Venice Film Festival, the Toronto International Film Festival (TIFF), the Sundance Film Festival, and the Berlin International Film Festival. These can be competitive to get into, but many major cities will have festivals as well. I love New York Film Festival (NYFF), personally.</p>
<p>Cannes Festival is definitely the most prestigious — often, it’s the first place highly anticipated films will ever be shown. If you’re not in the film industry, you have to apply for a festival pass by writing a cover letter, so it’s not easy to get in. Cannes has a special program for people under 28 years old, where it’s completely free if you are accepted (besides travel and accommodation costs, of course). I was hoping to go this year, but then the <em>craziest</em> thing happened recently and Cannes was postponed indefinitely… I digress.</p>
<p>Every year (well, <em>typically</em> every year), Cannes will award a Palme D’or, the highest prize of the festival. <em>Parasite</em> won in 2019. Other awards to look out for include best director, best screenplay, and the Grand Prix (which is like “second place” at Cannes).</p>
<p>Other festivals, like TIFF and Sundance, will have similar awards. TIFF and Sundance are also great because they’re a lot more easily accessible to general audiences. By paying attention to these awards and the general buzz from the industry, you can know which movies to watch either at a local festival or as soon as the movie is widely released. Right before and during the more popular festivals, you can get a sense on what films people are excited about on social media and news publications.</p>
<p>I feel really fortunate to have watched <em>Parasite</em> and <em>Portrait of a Lady on Fire</em> at NYFF, before they were released and well before general audiences heard much about them.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429233074/g6fPNwjHM.jpeg" alt="New York Film Festival" /></p>
<p>In my experience with TIFF and NYFF, getting tickets works similarly to getting tickets for a really popular concert. You have to keep a reminder for when the tickets are first released, and as soon as the tickets come out, go to the website and you’ll be put into a virtual queue. You may have to wait a couple hours at this point. Your chances at getting tickets will be very good, but sometimes really popular films can still sell out right away.</p>
<p>If you can afford it, you can buy a membership for the film society that runs the festival — they often have cheaper prices for students and younger people. This lets you get early access to tickets, so you’ll be pretty much guaranteed any ticket you want.</p>
<p>Watching a movie at a film festival is different than watching general release. There’s no trailers. The audience demographic is generally older. Most importantly, there’s often a Q&amp;A at the end of the film with the director and some of the actors, which adds so much to the experience.</p>
<p>Even outside of festivals, you can find screenings that feature Q&amp;As with an actor or director, especially around the movie’s general or early release. To track these down, either sign up for mailing lists or follow social media accounts for local independent theatres and film societies. In Toronto, I follow <a target="_blank" href="https://twitter.com/TIFF_NET">@TIFF_NET</a>. In New York, I follow <a target="_blank" href="https://twitter.com/FilmLinc">@FilmLinc</a> and am on mailing lists with IFC Center and Angelika Film Center. You can also follow the specific directors and actors who you are interested in seeing.</p>
<h2 id="heading-choosing-movies-to-stream">Choosing Movies to Stream</h2>
<p>I have Netflix and Amazon Prime Video, and occasionally I’ll sign up for a free trial for other streaming services when I need to mix things up. Worst case, if a movie isn’t streaming anywhere, it’s almost always available to rent on YouTube. One particular service I’m excited to try soon is the Criterion Collection, which has a lot of classic and foreign films.</p>
<p>Besides word of mouth, I build up a watchlist by searching for movies in a variety of ways: looking at popular movies released on a given year, looking at lists of movies curated by others, looking at directors’ filmographies. I do most of this on Letterboxd, which has a useful feature of greying out movies I’ve already watched. There’s lots of ways to conveniently filter lists and sort lists as well.</p>
<p>Nowadays, I completely ignore any recommendations from streaming services. I have a Letterboxd Pro account, which allows me to specify which streaming services I use and then allows me to filter my watchlist by those services. I especially like the fact that I can specify streaming services by country, so paired with a VPN, I have lots of options (though I’ve found the availability data to be not super accurate for certain countries).</p>
<h2 id="heading-final-thought">Final Thought</h2>
<p>There’s so many good movies to watch!!!</p>
]]></content:encoded></item><item><title><![CDATA[Midsommar and The Farewell: Bringing Eastern Values to Western Film]]></title><description><![CDATA[When I think about Western values, the first things that come to mind are freedom, self-expression, and making it on your own. The kinds of stories we see on-screen often reflect this: the aspiring underdog, the lone hero, the rebel — classic charact...]]></description><link>https://ericbai.co/midsommar-and-the-farewell-bringing-eastern-values-to-western-film</link><guid isPermaLink="true">https://ericbai.co/midsommar-and-the-farewell-bringing-eastern-values-to-western-film</guid><category><![CDATA[Movies]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Sun, 05 Apr 2020 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429241663/vPC5CZoWM.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>When I think about Western values, the first things that come to mind are freedom, self-expression, and making it on your own. The kinds of stories we see on-screen often reflect this: the aspiring underdog, the lone hero, the rebel — classic character tropes that promote individualistic values. In recent times, however, these values are a bit harder to exercise.</p>
<p>Right now, we are enduring lockdowns and forced isolation for the sake of a common good. We are putting aside our individual aspirations today so that we can collectively prosper tomorrow. The American dream takes a backseat — but will this be temporary, or a larger cultural shift?</p>
<p>Even before the current pandemic, <a target="_blank" href="https://philosophynow.org/issues/120/Is_The_Age_Of_Individualism_Coming_To_An_End">the fall of individualism has been speculated on</a>. Freedom of choice can be an overwhelming burden, especially for young people who feel like the trajectory of their lives hinge on their immediate decisions. The concept of loneliness, <a target="_blank" href="https://www.newyorker.com/magazine/2020/04/06/the-history-of-loneliness">some argue</a>, is a relatively recent phenomenon that began a century or so ago, caused by the societal pressure to pursue independence. Worst of all, in a society where people are mainly looking after themselves, the vulnerable tend to be left behind — and <a target="_blank" href="https://www.theatlantic.com/ideas/archive/2020/03/coronavirus-will-supercharge-american-inequality/608419/">this has only been exacerbated by the current global instability</a>. It’s easy to see why socialism is growing in popularity.</p>
<p>For an example of how the cultural zeitgeist may be shifting, let’s look at two American films released in 2019. The first is <em>The Farewell</em>, written and directed by Lulu Wang. The second is <em>Midsommar</em>, written and directed by Ari Aster. Both are available on Amazon Prime Video.</p>
<p>The two have plenty of surface-level things in common — they are both distributed by A24, they were both snubbed at the Oscars, and both are about a woman from New York who travels to a different country. The most poignant connection that they share is their protagonists’ character arcs, which are propelled by grief and articulate the emotional importance of community. The films use these character arcs to assess the merits of individualism and collectivism, and though collectivism “wins out” in both, the films allow the audience to fully appreciate the richness and complexity of both value-sets.</p>
<p>(Spoilers ahead for <em>Midsommar</em> and <em>The Farewell</em>)</p>
<hr />
<p>In <em>The Farewell</em>, Billi (Awkwafina) finds out that her grandmother, Nai Nai (Zhao Shuzhen) has been diagnosed with cancer, and is expected to have only three months to live. Billi, who was raised in America, wants to tell her grandmother the truth about her situation. After all, wouldn’t her grandmother want to choose for herself how she spends her last days? Billi’s Chinese family, on the other hand, insists on lying to Nai Nai to preserve her peace of mind. An impromptu wedding is planned so that Nai Nai’s family can gather together without arousing her suspicions.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429237757/ifCGvKt9H.jpeg" alt="The Farewell" /></p>
<p>The cultural divide is most explicitly highlighted when Billi’s uncle explains to her why Nai Nai should not learn the truth:</p>
<blockquote>
<p>“You think one’s life belongs to oneself. But that’s the difference between the East and the West. In the East, your life is part of a whole. Family. Society. You want to tell Nai Nai the truth because you’re afraid to take responsibility for her. Because it’s too big of a burden. If you tell her, then you don’t have to feel guilty. We’re not telling Nai Nai because it is our duty to carry this emotional burden for her.”</p>
</blockquote>
<p>After understanding her family’s motivations, Billi stops trying to tell Nai Nai the truth — in fact, she rises to the occasion to make sure the deception continues. She learns that accepting the choices of your family does not have to be a passive act that robs you of your freedom. It can be an active choice of restraint.</p>
<p>Billi’s character arc in the film, as she navigates her cross-cultural identity, allows the audience to appreciate Eastern values without dismissing Western values. She is stuck in the middle of both. Everyone can relate to situations like Billi’s, where we need to decide whether to prioritize ourselves or others. At what point does self-care become selfishness, and at what point does helping others involve too much self-neglect? Billi learns that she has the capacity to endure Nai Nai’s emotional burden, and putting her family’s needs before her own is an exercise of love that makes her stronger. It’s a lesson much more in line with Chinese values than American values.</p>
<hr />
<p>A similar cross-cultural contrast is shown in <em>Midsommar</em>. The film begins by introducing us to the protagonist Dani (Florence Pugh) just as she loses her entire family in a tragic incident. All she has left is her boyfriend Christian (Jack Reynor), who is selfish and emotionally unavailable. She leans on him for support in spite of his flaws. This toxic dynamic is a ringing indictment on the pitfalls of individualism. Dani’s vulnerability and grief is seen as a nuisance to Christian, who has zero interest in helping her handle her emotions. Dani is convinced that she has to put on a front of being okay in order to not annoy Christian and keep him around. Even if Christian sucks, she can’t bear to be any more lonely.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429239602/wRIe0gvyI.jpeg" alt="Midsommar" /></p>
<p>Dani and Christian, along with Christian’s friends, are American college students who go on a trip to Sweden. There, they observe a traditional celebration by the Hargas, a small commune that is slowly revealed to be a murderous cult. In contrast to Dani’s loneliness, the Hargas are a tight-knit community that collectively takes care of each of its members.</p>
<p>This contrast is made most explicit by Christian’s Swedish friend Pelle (Vilhelm Blomgren), who was raised by the Hargas. Pelle, like Dani, also lost his parents. He compares his experience to hers:</p>
<blockquote>
<p>“I never got a chance to feel lost. Because I had a family - here - where everyone embraced me and swept me up and I was raised by a community that doesn’t bicker over what is theirs and what is not theirs. That’s what you were given. But I have always felt held. By a family. A real family. Which everyone deserves. And you deserve. […][Christian]’s my good friend and I like him… But Dani, do you feel held by him? Does he feel like home to you?”</p>
</blockquote>
<p>Pelle is pointing out that Dani’s loneliness and helplessness, and Christian’s inability to help her, are a product of America — it is much easier for the vulnerable to be neglected in an individualistic society.</p>
<p>At the end of the movie, Dani’s fragile emotional state can no longer stay bottled up. She witnesses Christian having sex with a Harga woman (he was manipulated into this, but like, kinda not really). She snaps and breaks down in tears. A mob of Harga women cry with her, demonstrating the empathy and solidarity that she has been craving the entire film. The Hargas offer her a choice to sacrifice Christian for the festival, which she accepts, indicating her full indoctrination into the cult. The movie ends with her finally smiling, at peace with her new family. Her need to be held, to feel at home, is more important at this point than the horrible actions of the Hargas, or any affinity she still had for her American way of life.</p>
<hr />
<p><em>Midsommar</em>, much like <em>The Farewell</em>, articulates the emotional importance of community and family. The films accomplish this through Dani and Billi’s slow transformations, sparked by their introduction to collectivist values. The decisions that both characters make at the end of the film are so emotionally powerful because of how revelatory they are to the characters themselves. It’s fantastic storytelling.</p>
<p>To be clear, the films do not dismiss Western values. Billi still goes back to New York to lead her own life, and Dani’s mental breakdown and subsequent assimilation to a cult can hardly be considered a happy ending. <em>Midsommar</em> and <em>The Farewell</em> acknowledge that there is nuance involved when evaluating different cultural philosophies. By doing so, the two films demonstrate that there’s plenty of room in American cinema to hear “outside” perspectives on what American values are and what they ought to be, and that it’s not a threatening thing. In our current times of global crisis, it’s more important now than ever to think about how we can support one another, and to do what’s best for our communities.</p>
<p>In a way, <em>The Farewell</em> and <em>Midsommar</em> *had* to cover the dynamic between Eastern and Western philosophies with the nuance that they did. The American value system is so familiar to us that we would feel cheated if it were depicted in a shallow manner, especially when contrasting it with collectivist values. I wish the reverse was true — imagine pro-individualism films, a common sight in American cinema, fully synthesizing the collectivist viewpoint for its viewers. Of course, this is rarely a consideration for the dominant ideology — and both Western cinema and the Western world lose out from this lack of consideration.</p>
]]></content:encoded></item><item><title><![CDATA[Review: Parasite]]></title><description><![CDATA[A perfect movie!
The most amazing thing about this film is how unconventional it is, yet it feels so natural and coherent. Bong Joon-ho is such an innovator in this regard. Some examples:

There are two totally separate but both incredibly long, tens...]]></description><link>https://ericbai.co/review-parasite</link><guid isPermaLink="true">https://ericbai.co/review-parasite</guid><category><![CDATA[Movies]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Wed, 02 Oct 2019 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429244749/cwt_kqD-0.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A perfect movie!</p>
<p>The most amazing thing about this film is how unconventional it is, yet it feels so natural and coherent. Bong Joon-ho is such an innovator in this regard. Some examples:</p>
<ul>
<li>There are two totally separate but both incredibly long, tense sequences. So much happens in these sequences, and it’s bewildering that it just keeps going and going, until finally it’s over and you can catch your breath.</li>
<li>The way each family member scammed their way into the house at the beginning got more and more ridiculous. It’s incredible how it felt totally natural to go from the first mild scam to the final outrageous one.</li>
<li>The constant switch-ups in genre and tone. The film transitions from a comedy to a thriller so deftly, all while consistently realizing its message to the audience.</li>
</ul>
<p>So happy for the recognition Bong Joon-ho is receiving this year.</p>
<p>5 / 5 stars.</p>
<p><em>Originally posted to my <a target="_blank" href="https://letterboxd.com/ericbai/film/parasite-2019/">Letterboxd</a>.</em></p>
]]></content:encoded></item><item><title><![CDATA[University of Waterloo Pro Tips]]></title><description><![CDATA[This advice is oriented for new or aspiring University of Waterloo students, especially those seeking a career in the tech industry. This advice is mostly for academic and career success. This means that other very important aspects of university lif...]]></description><link>https://ericbai.co/university-of-waterloo-pro-tips</link><guid isPermaLink="true">https://ericbai.co/university-of-waterloo-pro-tips</guid><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Sat, 20 Jul 2019 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429247832/6PWeF30QB.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This advice is oriented for new or aspiring University of Waterloo students, especially those seeking a career in the tech industry. This advice is mostly for academic and career success. This means that other very important aspects of university life, like socializing and managing your physical and mental health are not covered as much, even though they are equally as important.</p>
<p>The advice throughout follows some common themes:</p>
<ol>
<li><p>Surround yourself with the right people.</p>
</li>
<li><p>Think ahead: anticipate your future needs early. Even if you don’t know what you want, you can maximize your future opportunities.</p>
</li>
<li><p>Gain as much career-relevant experience as you can, as fast as you can.</p>
</li>
<li><p>Prioritize your needs and manage your time properly.</p>
</li>
</ol>
<h2 id="heading-applying-to-waterloo">Applying To Waterloo</h2>
<p>Choosing the right program is a very personal question and there’s no right answer. However, there is an optimal way to <em>apply</em> to programs at Waterloo. This is because it is easier to switch from a more competitive program to a less competitive one (or get rejected from a competitive program and still receive an alternate offer). The best strategy, then, is to apply to the most competitive programs, even if you think you might want to be in a less competitive one.</p>
<p>The main benefit of competitive programs is not the courses you get to take. It’s the network of incredibly hard-working and intelligent peers you will get access to. It’s crucial to surround yourself with friends who you can get help from for assignments and job hunting. Even if you think a program like Software Engineering is too much work for you, you will have the flexibility to opt out. Keep your options open, and try out the more competitive program. You can even make your most important friendships in a hard program and then switch to an easier program, giving you the best from both programs.</p>
<h2 id="heading-choosing-residences-courses-co-op-streams">Choosing Residences, Courses, Co-op Streams</h2>
<p><strong>Choose stream 8 if you can:</strong> Getting 8 months of school before your first co-op is strictly better than only getting 4 months. Employers prefer students who have had more school, and it is easier for you to adjust to university life without immediately needing to job hunt.</p>
<p><strong>Choose apartment-style residences:</strong> The main critique of apartment-style residences is that it’s easier to be social in a dorm. Personally I had no problem socializing, and apartments are undeniably higher-quality living situations. It’s easier to get apartment-style if you have a group to live with beforehand. I would avoid getting a meal plan, which is just a way of forcing you to spend money; dorms have mandatory meal plans while suites typically have the option of no meal plan.</p>
<p><strong>Choosing courses:</strong> Your courses are a personal choice based on your ambitions and how much work load you want to take on. That said, you should go through the required courses for your program as early as possible. You don’t want to get stuck in a situation where you find your schedule in 4th year does not allow you to take the courses you need to graduate, delaying your graduation. This can happen due to not having pre-reqs to take courses, or it can happen because certain courses are only offered in certain terms. Getting requirements out of the way early lets you have more flexibility in the future. Look up which terms (winter, spring, or fall) the courses you want and need to take are offered. Plan out your schedules for future terms ahead of time, as soon as you know what courses you will be taking. You can schedule some time with an academic advisor to go over your plan and verify it meets your program’s requirements.</p>
<p>One interesting note for CS courses: Algorithms and Operating Systems are the two major third-year courses that bottleneck your ability to take fourth-year courses. You can fast-track one of them based on your interests, by delaying any pre-reqs for one but not the other. I recommend taking Algorithms earlier, since the concepts there are more useful for technical interviews. You can also look into fast-tracking your statistics courses.</p>
<h2 id="heading-succeeding-at-your-courses">Succeeding At Your Courses</h2>
<p><strong>Use UWFlow:</strong> UWFlow is an amazing tool that does a lot for you:</p>
<ul>
<li><p>Best way to explore which courses to take (shows you which courses you meet the pre-reqs for, course schedules, how easy and useful people found courses, which courses your friends have taken, etc.)</p>
</li>
<li><p>Exports your course schedule for you, so you can have your schedule in your favourite calendar app automatically (I prefer Google Calendar)</p>
</li>
<li><p>Create a wishlist of courses you want to consider for the future</p>
</li>
</ul>
<p><strong>Go over the syllabus and put everything in your calendar:</strong> Assignment due dates, midterms, office hours, everything. The goal is to expect how busy you’ll get throughout the term, so nothing catches you by surprise. You should also know all of Waterloo’s important dates:</p>
<p><a target="_blank" href="https://uwaterloo.ca/registrar/important-dates/calendar">https://uwaterloo.ca/registrar/important-dates/calendar</a></p>
<p><strong>Optimize your course schedule:</strong> Use RateMyProf and UWFlow to make sure you are in the course sections with the best professor. The professor is much more important than the time or location of the section. You can usually attend a different section even if you are not enrolled, unless too many people do the same thing. When this happens, you may get your ID checked. Be ready to change your schedule as soon as you are able to (look up what dates course selection are); it’s much harder to change later.</p>
<p><strong>Collaborate on assignments:</strong> Make friends with others taking the same courses as you, and never submit an assignment without collaborating with friends. This doesn’t mean copying answers; it means verifying that you are understanding the course materials correctly before losing out on marks rather than after. Seriously, no copying.</p>
<p><strong>Go to office hours:</strong> One-on-one help from the professor or TA will usually spell out for you how to do an assignment or understand an example. Don’t waste hours being stuck on one part of an assignment; usually you just need one quick hint to finish the question quickly. You should attempt the assignment before going to office hours in order to have specific questions to ask. In fact, treat the office hours before an assignment is due as a soft deadline for the assignment.</p>
<p><strong>Take organized notes:</strong> Basically, copy word for word what the prof writes down on the board. If your prof does not write everything down or writes things in a disorganized way, perhaps you have a bad prof. If you have no alternative, you may need to take some extra time to organize the ideas and examples into a way that makes more sense to you after class. Alternatively, you can see if there are course materials on Learn (like a textbook or slide decks) and write notes that summarize those materials instead. Worst case, Google the course and see if you can find old course notes shared by past students.</p>
<p>(Quick shoutout to Anthony Zhang’s notes: <a target="_blank" href="https://anthony-zhang.me/University-Notes/">https://anthony-zhang.me/University-Notes/</a>)</p>
<p>Just skip class if you’re extremely confident the course materials are sufficient for you. Regardless, always take notes.</p>
<p><strong>Study effectively:</strong> My personal method for studying:</p>
<ul>
<li><p><strong>Summarize all your notes:</strong> Go over your notes and concisely but thoroughly cover every major concept. If you need to, cross reference your notes with other course materials. Of course, omit any notes that you have been told will not be on the exam. The goal is to make the shortest possible cheat sheet that, if you knew everything covered in it, you would get 100% on the exam.</p>
</li>
<li><p><strong>Go over assignments, practice exams, and past exams (in that order):</strong> Redo all your assignments; try to do them with as little help from your cheat sheet as possible. Reference the answer sheet after you’ve given your best try. Edit your cheat sheet as needed if you find anything missing. Repeat this process for practice exams and past exams. Ideally by the end, you will not need to reference your cheat sheet.</p>
</li>
<li><p><strong>Ask for help:</strong> Only after doing the above steps should you study with friends or go to office hours. Ask about specific questions you were unable to do on your own and specific concepts you could not understand from your notes. Help your friends: you will know you are ready if you can teach your friend any concept. Compare cheat sheets and see if you all agree on what will be covered on the exam.</p>
</li>
</ul>
<p><strong>Good study spots:</strong></p>
<ul>
<li><p>The criteria for a good study spot:</p>
<ul>
<li><p>Appropriate noise level (for group studying or solo studying)</p>
</li>
<li><p>Not too crowded</p>
</li>
<li><p>Roomy table space</p>
</li>
<li><p>Accessibility to outlets and nice washrooms</p>
</li>
</ul>
</li>
<li><p>Some good study spots (some are more hidden gems than others):</p>
<ul>
<li><p>E6 soft seating across from the elevators (go to any upper floor)</p>
</li>
<li><p>Laurier Library and other Laurier buildings (way less crowded than Waterloo! But not always open 24/7)</p>
</li>
<li><p>Tatham Centre (when it’s not busy during interview season, you can book an entire room)</p>
</li>
<li><p>M3 study lounge and upper floors</p>
</li>
<li><p>DC or DP libraries I guess…</p>
</li>
<li><p>Join a club; clubs have the ability to reserve rooms</p>
</li>
<li><p>Certain residences, programs, and student housing have study lounges</p>
</li>
<li><p>MC Tutorial Lounge</p>
</li>
<li><p>Quiet areas in upper floors of MC</p>
</li>
</ul>
</li>
</ul>
<p><strong>Understand what works for you:</strong> Be critical of how your note-taking, studying, class attendance, and etc. factor into your success, because it’s heavily dependent on you as an individual. Explore whether you take notes better on paper vs laptop. How should you format your notes for your future self? Do you learn better from lectures or from reading a textbook? Figure out your preferences early.</p>
<h2 id="heading-read-evys-guide-to-internships">Read Evy’s Guide to Internships</h2>
<p>I cover many of the same topics in this post, but Evy goes into a lot more detail here: <a target="_blank" href="https://evykassirer.github.io/playing-the-internship-game/">https://evykassirer.github.io/playing-the-internship-game/</a></p>
<h2 id="heading-gain-coding-experience-the-first-step-to-building-a-great-tech-resume">Gain Coding Experience - The First Step To Building a Great Tech Resume</h2>
<p>If you don’t have high quality experience on your resume, no amount of wordsmithing or hyperbole is going to impress an employer. If you’re like most first-years, you have little to no experience to fill out even a one-page resume. <strong>Start gaining experience as soon as possible.</strong> There are many ways to do this: work on a side project, join a coding club, go to a hackathon, practice/participate in coding competitions, or contribute to open source. Try out each of these methods, and stick with the ones that you find most effective.</p>
<p><strong>Start a side project:</strong> This is difficult for first-years since you’ll have little coding experience and you also need to come up with an interesting idea that will motivate you to see it through to completion. Keep in mind the originality of the idea is not that important. You can even completely copy an existing app that you really like. What’s important is that you find the motivation to complete the app, and you learn a lot from the process of working on the project. Side projects are best suited for you if you enjoy product design. An easy first side project is to make a portfolio website.</p>
<p><strong>Join a tech club:</strong> This option is great because it also helps you meet new people. The most obvious club you’d first look into is Computer Science Club. <em>Do not join Computer Science Club.</em> I recommend joining clubs that are trying to complete a project within the term. This time constraint almost guarantees that you will get something impressive to put on your resume. Time constraints are also beneficial because these clubs will need to be more selective of its members, which helps you find mentors and friends who will support you with school and jobs. Any club that meets this criteria is a good bet, but the clubs/residences I have in mind are Hack The North, UW Blueprint, and Velocity Residence. Apply to a club/residence like these right away, because they recruit before the term starts. Despite being selective, these clubs highly value developing the skills of less experienced students, so your chances of getting in are better than you think.</p>
<p><strong>Go to a hackathon:</strong> A hackathon is a 24- or 36-hour event where participants form teams of 1-4 and build a project idea entirely during the time of the event. The goal is to have enough of the product built so that they can demo it to a pane of judges. A select few teams are chosen as winners. This is not much different that starting a side project, but hackathons help motivate you, provide mentors, and you can even join a team with a cool idea if you can’t come up with your own. Go with ambitious friends - surviving a hackathon together really brings people closer together. The best hackathon in Waterloo is Hack the North, but there are plenty of others like TerribleHack and EngHack, as well as hackathons hosted at other universities or by tech companies. The best way to learn about hackathons is making friends with people who go to hackathons. Hackathons often pay for the cost of transportation and provide food and free swag throughout the event. Some hackathons even provide fun break activities like therapy puppies or juggling lessons, or mini coding competitions. Hackathons can be a great opportunity to network with peers and employers.</p>
<p><strong>Coding Competitions:</strong> This option is appealing because it both builds your resume and is practice for technical interviews at the same time. The best websites for coding challenges are HackerRank and LeetCode. I will cover how to get the most out of these websites in this post’s section on Practicing for Interviews, but I encourage you to save the code you write, host it somewhere like Github, and link to it on your resume.</p>
<p><strong>Contribute to open source:</strong> Open source projects on Github always have tasks that they want people to do. As you use open source tools, you may likely find a bug or feature that you yourself can submit a change for.</p>
<p><strong>Be an undergraduate research assistant:</strong> This option is best suited for if you are considering pursuing a Masters or PhD. You get to collaborate with a prof on their research project, you get paid, and you are eligible for a small scholarship.</p>
<ul>
<li><p>Engineering: <a target="_blank" href="https://uwaterloo.ca/engineering/ura">https://uwaterloo.ca/engineering/ura</a></p>
</li>
<li><p>Computer Science: <a target="_blank" href="https://cs.uwaterloo.ca/current-undergraduate-students/research-opportunities/undergraduate-research-assistantship-ura-program">https://cs.uwaterloo.ca/current-undergraduate-students/research-opportunities/undergraduate-research-assistantship-ura-program</a></p>
</li>
</ul>
<h2 id="heading-writing-your-resume">Writing Your Resume</h2>
<p>In the tech industry, a resume should be one page.</p>
<p><strong>The format I recommend:</strong></p>
<ul>
<li><p><strong>Your name in a large font</strong></p>
</li>
<li><p><strong>Links:</strong> your personal website, your Github account, LinkedIn, and email (get started on making all of these!)</p>
</li>
<li><p><strong>Skills:</strong></p>
<ul>
<li><p>Languages: programming languages. Put any down if you’ve used them.</p>
</li>
<li><p>Technologies: specific frameworks or tools you’ve used.</p>
</li>
<li><p>Algorithms: This section is optional. Remember when I said you should save your solutions to HackerRank and LeetCode problems? Link to it here.</p>
</li>
</ul>
</li>
<li><p><strong>Work Experience:</strong> All your past tech internships. Only put non-tech jobs if you really can’t fill up your resume any other way.</p>
</li>
<li><p><strong>Projects:</strong> Your side projects, open source contributions, hackathon projects.</p>
</li>
<li><p><strong>Other, as needed:</strong> Maybe you have research experience, or participated in a coding competition.</p>
</li>
<li><p><strong>Education:</strong> The least important section, since you can’t really differentiate yourself here. But still include it, because employers need to know what program you’re in and when you expect to graduate</p>
</li>
</ul>
<p><strong>For each past experience (whether it be work, research or a project):</strong> use point-form to detail what you did. It is important to highlight:</p>
<ul>
<li><p>What did you make</p>
</li>
<li><p>How did you make it (what tools; which parts of the tech stack)</p>
</li>
<li><p>Why is this impressive (did you earn any prize or other form of recognition from this experience? what was its effect on real people? did it make/save money? why was it challenging?) If possible, quantify why this is impressive (e.g. made a process 50% faster, or acquired 500 users).</p>
</li>
</ul>
<p>Keep the points concise. Set a one or two line limit for them.</p>
<p>The best way to improve your resume (besides gaining more experience) is to <strong>look up the resumes of Waterloo students with good careers</strong> (they’ll usually link to it on their personal websites). Analyze the format they use, how they word their bullet points, and so on. Keep an eye out for on-campus resume critiques run by more experienced students. They are usually shared on Facebook, or on posters around campus.</p>
<h2 id="heading-applying-for-jobs">Applying for Jobs</h2>
<p>Waterloo uses a tool called WaterlooWorks for you to manage your job applications. You have a limit of 50 applications in the first round. 50 is a lot. The less experience you have, the less selective you should be, so in first-year, use all 50. There are multiple rounds of job postings: first round (the most important round when all the best companies hire), second round, and continuous round (when you basically have unlimited applications). Note that any rejections you get from your first round of applications actually replenishes your number of applications, as long as the second round hasn’t ended. Apply to some jobs that you don’t have the requirements for. You should still have plenty of applications after this to apply to jobs with requirements that sound like they fit your experience. Your experience does not need to perfectly match the job posting’s requirements; be ambitious. Often, I’ve heard students scared of applying to jobs they aren’t sure they’re qualified for because they’re afraid of failing the interview. But getting hard interviews is exactly what will help you get better at interviews in the future. Don’t be afraid to fail interviews.</p>
<p><strong>Unless you have other very positive signals, avoid applying to places that no friend or friend of friend has ever worked at:</strong> The best way to know if a company is good is through testimonials from people you trust. This is why it’s important to make good friends - chances are a friend of a friend has worked at any given company. You could even try asking the company to connect you with a past/current intern.</p>
<p><strong>When are other positive signals for a company?</strong> To answer this, you need to research the company much like how a venture capitalist would before investing. Unlike a venture capitalist, you have much less resources at your disposal. See who the company’s investors are (do these investors have a good track record?), the resumes of employees at the company, and how well they pay.</p>
<p><strong>Postings with few applications should be avoided:</strong> You can see how many other students have applied to a posting. It can be tempting to use that number to apply to jobs with less competition, but really this is just a sign that you should likely avoid the company.</p>
<p><strong>All else equal, prefer companies that will have multiple interns:</strong> It’s a great way to make friends.</p>
<p><strong>Go to info sessions:</strong> Learn more about what a company is like, get free food and swag. Bring a physical resume to give to the speakers. Look at the info session calendar and add all the interesting ones to your calendar app. <a target="_blank" href="http://www.ceca.uwaterloo.ca/students/sessions.php">Click here to see UWaterloo’s info session calendar.</a></p>
<p><strong>Jobs in the US are generally more desirable:</strong> The tech industry is simply more competitive in the US. Even if you prefer staying in Canada, a job in the US will make getting future jobs easier.</p>
<p><strong>Avoid returning to the same company:</strong> Co-op is an amazing opportunity for you to try out different companies. Each new experience gives you a better resume to get an even better experience next co-op.</p>
<p><strong>Other networking and recruiting events:</strong> Besides info sessions, companies tend to throw events such as:</p>
<ul>
<li><p>Women in Tech socials</p>
</li>
<li><p>Office tours</p>
</li>
<li><p>Tech talks</p>
</li>
<li><p>The Google Tech Challenge! This is an incredibly fun event held every year at Google’s Waterloo office. <a target="_blank" href="https://buildyourfuture.withgoogle.com/events/tech-challenge/#!?detail-content-tabby_activeEl=about">https://buildyourfuture.withgoogle.com/events/tech-challenge/</a></p>
</li>
</ul>
<h2 id="heading-interviewing">Interviewing</h2>
<p><strong>Read Cracking the Coding Interview:</strong> You really do need to know everything in there. It’s always best to cross-reference when you study, so read other sources that cover the same topics as well. I also recommend the CS Handbook: <a target="_blank" href="https://www.thecshandbook.com/">https://www.thecshandbook.com/</a></p>
<p><strong>Practice on HackerRank and LeetCode:</strong> Start off with the easiest questions and proceed to harder questions at whatever pace is comfortable.</p>
<p>There are two skills needed for coding challenges:</p>
<ol>
<li><p><strong>Implementation</strong>: Proficiency with the coding language</p>
</li>
<li><p><strong>Algorithms</strong>: Knowing what algorithms and data structures you need to solve the underlying problem efficiently</p>
</li>
</ol>
<p>Try to do the coding problem on your own at first. If you get stuck on implementation, just Google it. If you get stuck on the algorithms, look up the answer (usually there is a discussion section where people share answers). Do you understand the answer? If not, go back to reviewing Cracking the Coding Interview. If you do understand it, close the answer and try to implement it without looking back at it. Look at multiple answers to see if any of them are easier to understand.</p>
<p>Do you understand run-time? You will almost always be asked about the run-time of an algorithm you code in an interview. Make sure you practice identifying run-time while using HackerRank and LeetCode.</p>
<p>Once you’ve practiced on HackerRank and LeetCode enough, try practicing on paper. Make sure you ask yourself the time complexity of your solution. It’s also good practice to come up with your own test cases, even before you start coding. Try talking through your thought processes out loud.</p>
<p>Practice with friends. Some clubs like UW Blueprint or engineering societies hold mock interviews. They will likely be advertised on posters or on Facebook.</p>
<p><strong>Prepare for non-coding questions:</strong> You should be comfortable answering questions about:</p>
<ul>
<li><p>Your past experiences (technologies used, implementation details and decisions)</p>
</li>
<li><p>Your courses (coding-related courses especially - you may need to explain course concepts)</p>
</li>
<li><p>Your program (you have to sell to the interviewer why your program is good and why you’re passionate about it)</p>
</li>
<li><p>Definitions (of things like data structures, object oriented programming concepts, recursion, types of tree and graph traversals, etc)</p>
</li>
<li><p>Role-specific concepts (Android, iOS, web, databases, etc.)</p>
</li>
</ul>
<p><strong>Some companies may also test you on things like:</strong></p>
<ul>
<li><p>Writing test cases</p>
</li>
<li><p>Systems design</p>
</li>
<li><p>Logic puzzles</p>
</li>
<li><p>Behavioural questions (what would you do in this situation?)</p>
</li>
</ul>
<p>For non-coding questions, the breadth of topics is very large, so spread out your time evenly when working on them.</p>
<p><strong>Choosing an interview slot:</strong> These are micro-optimizations.</p>
<ul>
<li><p>Check WaterlooWorks and your email regularly to see if you have new interviews. You want to get first choice on interview slots, so be ready at all times. Keep your email notifications on.</p>
</li>
<li><p>Go at a time when both you and the interviewer are going to perform your best. Not too early in the morning, when neither of you are fully ready. Not too late, when the interviewer just wants to go home. Not right before lunch, when the interviewer is hungry</p>
</li>
</ul>
<p><strong>During the interview:</strong></p>
<ul>
<li><p>Remember you are also evaluating the company. How much do you actually know about the company? Do you think you would like working for them?</p>
</li>
<li><p>If they ask you why you’re interested in working at the company, the easiest generic answers are to state the obvious benefits of working at such a small/big company. You should also talk about why you are passionate about the field of work that the company does.</p>
</li>
<li><p>Try to keep confident. Remember, you either pass the interview or you get good practice for your future interviews. Both are greatly beneficial to you, so be happy with either result. (There is a third possibility: the interview is a waste of time because the interviewer is bad at their job or the company misrepresented the role. Hopefully you still learn what kinds of companies to apply for in the future.)</p>
</li>
</ul>
<p><strong>During the coding question:</strong></p>
<ul>
<li><p>Start by making sure you understand the question. Ask for clarification if needed. Before you code, write out interesting test cases. The interviewer will confirm if the test cases are correct. Even if you think you understand the problem perfectly, make sure.</p>
</li>
<li><p>Think over what algorithms and data structures to use. If you have to, brute force this by going over every data structure you know and think about if it makes sense to use.</p>
</li>
<li><p>Start by coding the easiest thing to implement that comes to mind. Do not worry about the efficiency. Worry instead about how complicated your solution is. Every interview question has a short, easy to understand solution, so if yours is convoluted, try to restart and think of alternate approaches. Otherwise, you likely won’t finish coding, and you likely have many bugs.</p>
</li>
<li><p>Before the interviewer prompts you, you should immediately go back to your test cases you have already come up with, and run through your code with one of them. Communicate every step to the interviewer. You will likely catch bugs in your code at this point. Catching bugs without any help from the interviewer is great.</p>
</li>
<li><p>Now look over your solution and judge its efficiency. Write a more efficient solution if you can.</p>
</li>
</ul>
<p>Try to communicate your thought processes as much as possible at every step.</p>
<p><strong>At the end, ask the interviewer questions:</strong> This is not a test. This is your opportunity to evaluate the company. Ask questions like:</p>
<ul>
<li><p>What sets the company apart from others? Why did you choose this company?</p>
</li>
<li><p>What is an example of a challenging problem you work on?</p>
</li>
<li><p>What do you like least about working at the company?</p>
</li>
<li><p>If you could change one thing about your company or team, what would it be?</p>
</li>
<li><p>(more question examples in Evy’s internship guide!)</p>
</li>
</ul>
<p>Some companies will contact you about interviews and offers outside of WaterlooWorks and some don’t. If they do, you’ll likely have the chance to ask about pay later. If they don’t, <strong>ask about pay during the interview.</strong></p>
<h2 id="heading-choosing-offers">Choosing Offers</h2>
<p>Even if you only have one offer, you need to do some soul-searching: Is taking this offer valuable for your career? Most of this evaluation process is covered by the same tips for applying to companies.</p>
<p><strong>When is a job offer negotiable?</strong> Companies with lots of interns might be difficult to negotiate with because they don’t want to pay one intern more than others. However, there is no downside to negotiating. The company has already invested a lot to acquiring you, so you can leverage your position to increase your pay, or changing your start and end dates. Ask friends for help with negotiating. I like this resource for learning how to negotiate: <a target="_blank" href="https://haseebq.com/my-ten-rules-for-negotiating-a-job-offer/">https://haseebq.com/my-ten-rules-for-negotiating-a-job-offer/</a></p>
<h2 id="heading-good-habits">Good Habits</h2>
<p><strong>Seek help proactively:</strong> Getting stuck and not seeking help is a total waste of time. Go to office hours, ask friends, and check Piazza (a website Waterloo profs use for Q&amp;As from students).</p>
<p><strong>Use your calendar to budget your time:</strong> Anticipate the busiest parts of your term by looking at all the midterms and assignments in your calendar. You don’t normally need to start assignments or studying super early (it’s a lot easier when others have already clarified every detail on Piazza for you to leisurely read), but you will need to start early if your upcoming weeks are incredibly busy. Block out time for working on assignments and studying.</p>
<p><strong>Take care of your body:</strong> Sleep well, eat well, and take your physical and mental health seriously.</p>
<p><strong>Don’t stop meeting new people:</strong> The people are the most important thing you get out of university.</p>
<p><strong>Practice learning independently:</strong> Don’t let a bad prof lead to bad grades - you can stay in control by learning from just the lecture slides and reading materials.</p>
<p><strong>Learn how to prioritize:</strong> Getting that last one mark you’re missing in an assignment isn’t worth hours of your time. An interview from a good company is more important than doing well on a midterm (but not more important than at least passing the midterm, obviously). Do not neglect your physical and mental health.</p>
<h2 id="heading-considerations-for-first-years">Considerations for First Years</h2>
<p><strong>Interviewers may not even give you coding questions:</strong> They assume you lack experience and will try to differentiate candidates based on non-coding questions.</p>
<p><strong>Marks matter more in first year:</strong> Companies can only differentiate first years by marks, since almost everyone has little-to-no experience.</p>
]]></content:encoded></item><item><title><![CDATA[Review: The Farewell]]></title><description><![CDATA[If Awkwafina cries, I cry, it’s just on sight.
I’ve never seen a movie like this before. It’s rare enough to see myself represented in a film… I never even considered it possible to see my entire family represented on-screen. I think the key to reson...]]></description><link>https://ericbai.co/review-the-farewell</link><guid isPermaLink="true">https://ericbai.co/review-the-farewell</guid><category><![CDATA[Movies]]></category><dc:creator><![CDATA[Eric Bai]]></dc:creator><pubDate>Sat, 13 Jul 2019 00:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1641429250891/n-XGyVVxq.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>If Awkwafina cries, I cry, it’s just on sight.</p>
<p>I’ve never seen a movie like this before. It’s rare enough to see myself represented in a film… I never even considered it possible to see my entire family represented on-screen. I think the key to resonating with an audience member’s life experiences is the little genuine moments, taken directly out of real life, as if the director is letting you know: “I’ve experienced this too”. The film was a feast of those small, genuine moments, and they were the driving force of the plot, rather than added on top or sprinkled in between plot points.</p>
<p>Lulu Wang shows us the beauty and tragedy of a family united in grief - the conflict, the love, the fear, and the humour that surfaces regardless of it all.</p>
<p>I’m going to cherish this movie for a long time.</p>
<p>Viewed at Angelika Film Center in NYC, with a Q&amp;A from Awkwafina afterwards.</p>
<p>4.5 / 5 stars.</p>
<p><em>Originally posted to my <a target="_blank" href="https://letterboxd.com/ericbai/film/the-farewell-2019/">Letterboxd</a>.</em></p>
]]></content:encoded></item></channel></rss>