{ "title": "GeekcampSG 2023", "startDate": "Oct 14, 2023, 10:00 AM", "endDate": "Oct 14, 2023, 6:00 PM", "inPersonLocation": "WeWork 21 Collyer Quay", "onlineLocation": "Discord", "registration": "Get tickets!", "volunteer": "Apply now!", "cfp": "CFP is now closed.", "description": "Join us for an eventful day of geek talks." }Enter command. Type help to see available commands
=>
What is
Geekcamp?
We're a free, one-day event that brings together hundreds of geeks in Singapore to have fun sharing about technologies and knowledge, connecting the community through curated talks, by geeks, for geeks.
Some of our past topics include databases, cybersecurity, 3D printing, dependency management, verifiable computing, blockchain, hardware version control, algorithms, internet scanning, compilers, interpreters, statistics, machine learning, authentication, orchestration, open-source and many more.
Schedule - Oct 14, 23
Time shown is in SGT (UTC+8)
Opening
Track 1 (2F)BarcampSG
Track 0 (2E)Barcamps are informal meetups where people come together to learn from each other through discussion and collaboration. We cover a wide range of topics, including design, books, science, movies, space exploration, health, food, the impact of technology on society, travel, and more. Participants are welcome to propose their own topics for discussion, and the group will vote on which ones to explore. Find out more on the BarcampSG website at https://openmeets.org/barcamp-singapore
Kneel before Zod!
Track 1 (2F)- Abstract: Inputs and outputs. That’s all your programs care for. When building apps, we need to manipulate data. The shape of that data will be our interface, between our users and applications, but also between the elements inside our system. How do we ensure that the data we manipulate has the expected format? Only one solution: Parse don’t validate! That’s what Zod is here for. - Scope of presentation Validation is a hard topic. We need to handle types, mapping different shape of data and most importantly running arbitrary rules to check the constraints we want to apply to our data. With the help of Zod we’ll do all these things. We will be able to use default validation rules (like check that a number is positive) as well as defining custom validation and complex data transformation. - Audience Takeaways Zod is a fantastic library that can help us for validation. - Prerequisites for the audience in order for them to appreciate the presentation Any developer that had to deal with validation (backend or frontend) or want to know how to deal with it is welcome.
ArchGPT - a new programming paradigm, and a prompt-orchestration framework for LLMs
Track 2 (2G)I have discovered something quite interesting during my time of working with GPT2, GPT3, GPT-Codex, ChatGPT3.5 and GPT4 in the past three years. In this talk I will introduce a new programming paradigm (under which anyone can create software using spoken English, and manages its architecture, etc) inspired by a theorem in category theory, and an open-source prompt-orchestration framework I've been working on to create automated software development pipeline with CodeLlama. By the end of this talk, you’ll be able to locally run an AI agent on your laptop that will manage a simple React app for you 👨💻 and build on top of it. Github Repo: https://github.com/0a-io/Arch-GPT *: ArchGPT is short for "Architecture for Reasoning and Computing over Hypergraphs on top of GPT-4 (and other LLMs))"
Building an Eco-Conscious, Transparent Relief Platform with Aptos and Move
Track 1 (2F)Explore how the Aptos blockchain, combined with Move, enables transparent coordination and eco-friendly cross-border payments. From innovative contract development to environment impact metrics, gain insights into creating a next-gen platform for global good.
Don't be a dunderhead
Track 2 (2G)What happens when python calculates 1 + 1? In this lightning talk, we'll go into how python makes use of the double underscored (dunder) methods, such as __add__ and __radd__ to provide a rich and comprehensive operator overloading mechanism. We'll strip back the abstraction, and go into the logic of how python decides to convert syntactical sugar into user specfied method calls, touching on reversed dunders, the NotImplemented Singleton, and how dunders work together. With that, we'll discuss how to properly implement custom operators overloading, and explain the reasoning behind certain good practices.
Good (n)gram hunting: How we built search in-house at (almost) zero cost
Track 1 (2F)This talk walks through the process of transforming an unstructured database of over 30 million entities into a text-searchable resource. Instead of using an existing solution, we opted to build our search in-house using ngrams, serverless computing and object storage. We will deep-dive concepts of indexing, (n)grams and tf-idf. And explore the insights from the successes, challenges and limitations of this technical project.
Side hustle: How I built a money making app as a solo developer
Track 2 (2G)Hi! In this talk I will step through the end-to-end process of building an application as a single developer. From understanding the problem, to architecting the solution, to coding and finally deploying. I will explain the thinking and technologies behind each process from my own decisions and alternative choices others can take. The main technologies I will focus on is Flutter and Firebase, with other mentions to Stripe and Singapore specific solutions like Paynow and OneMaps API.
Tribalism in Software Engineering
Track 1 (2F)Exploring the complex human behaviors that causes cults of personality to form around DHH, Evan You and Taylor Otwell. Will also explore the problem that arises when a beginner refuses to step outside of their bubble of knowledge and gets trap in defending their position without considering the values
Block Youtube shorts with Chrome Extensions
Track 2 (2G)A quick introduction on how to build a chrome extension in order to block youtube shorts on the youtube website. https://www.hairizuan.com/chrome-extension-to-get-rid-of-youtube-shorts/
Lunch
Track 1 (2F)Finding the shortest route to pick your online orders
Track 1 (2F)As E-commerce becomes more prevalent, most of us make our purchases online instead of shopping in person. Pickers are responsible for gathering our orders from various parts of the warehouse. They spend up to 60% of the time walking from one product to the next. Picker routing is an example of the Travelling Salesman Problem. Although the TSP is hard to solve in general, in the case of moving around a warehouse, we can exploit the restricted movement to develop efficient algorithms. This talk will cover recent advances in solving the TSP for such cases.
Inheriting teams and what to do with the new found minions
Track 2 (2G)Most people inherit teams at one point or another... hit the ground running or hit the ground and fall face flat goes beyond managing. It is about being human and treating others as such
Revving up with Cars, Code and AI: My Baby Steps into the AWS Deepracer Rabbit Hole
Track 1 (2F)Train a self-driving car with AI with absolutely zero prior knowledge? Apparently that's possible! I share my learning journey from my first experience with AWS Deepracer and how it combines gamification and AI to demystify Machine Learning and make it fun.
Ordinals and emergence of meta protocols on Bitcoin
Track 2 (2G)Explain how Bitcoin Ordinals are done and how Bitcoin, without any major upgrades, are attracting developers back into it again. Explains also about social consensus and how the whole Bitcoin meta protocol development fits into the whole OSI model.
Break
Track 1 (2F)From Law to Code: My Unexpected Journey into Open Source
Track 1 (2F)I talk about my transformation from a lawyer to a maintainer of an open source project that is used by many people around the world. From a brief moment of virality, I learnt to embrace change, pursue my passions and bridge seemingly unrelated worlds. Hopefully this inspires others in "unrelated" professions to embrace their inner geeks and think about possibilities that lie beyond your current path.
Making a call via the internet? Let's use Google Cloud and WebRTC!
Track 2 (2G)Have you used WebRTC to create an application for video calling? But Javascript/TypeScript/frontend tech is not enough! Here's how you can build a working internet telephone with frontend and backend in Javascript, containerized and deployed into the cloud!
SST Incorporated - An incubator for technology start-ups by Secondary School Students
Track 1 (2F)SST Incorporated (SST Inc.) is the technology Talent Development Programme in the School of Science and Technology, Singapore. SST Inc. is an incubator that nurtures student employees in running technology start-ups to serve communities and better our world.
The intelligent crop farmer
Track 2 (2G)I make use of simple dynamic programming methods implemented in spreadsheets to demonstrate optimal decision making over multiple time frame.
Call APIs with less error handling boilerplate code and better type safety!
Track 1 (2F)A pitch for better API libraries that requires less error handling boilerplate code due to errors thrown randomly, and have better type safety by having type safe API calls that we can actually trust using runtime validation instead of just generic castings!
Giving nightmares to reverse engineers
Track 1 (2F)How Artfuscator works and the motivations behind it: https://github.com/JuliaPoo/artfuscator Disclaimer: This project looks like a monumental achievement in compiler technology and it is but most of the work wasnt by me: I built Artfuscator on ELVM. Motivation: Give nightmares to the future generations of reverse engineers History: Had covid got bored project written while having a fever Intellectual content: A brief description of how compilers work in general, Artfuscator being a trojan horse to force-feed this knowledge Inspiration: REPsych by Christopher Domas Accreditation: 790 extremely well-deserved stars on github
Closing
Track 1 (2F)
2023
Speakers
What People Said
This talk was in the making for more than two years.
— Subhransu Behera (@subhransu) August 24, 2022
My biggest inspiration for this topic is my nine-year-old (then seven) daughter, Shayna, who loves to draw.@geekcamp is also one of the fantastic events where I met with many like-minded friends in Singapore. https://t.co/avMPP1Gvug
Over the weekend I took part in @geekcamp, and it was a blast! Met a few old and new friends and had a lot of fun learning about new things while geeking out.
— Arash (@arashnrim) October 31, 2022
The best part is that this is my first GeekCamp; here's to many more to come! 🥂
Really good talks on various topics @geekcamp Singapore today! #dev #robotics #art #music #future pic.twitter.com/0I4tRaQreC
— Nguyen Trieu Khang (@Knguyentrieu) October 19, 2019
On my way to @geekcamp , can't wait to check out the awesome talks this year. pic.twitter.com/f0MyOivq4x
— Eric (@wgx731) October 19, 2019
#geekcampsg happy to see old friends. Fun topics! pic.twitter.com/pn3pucQKZ0
— Sylvia Ng (@sylviang) October 31, 2022
Code
of
Conduct
All participants are expected to adhere to the CoC both onsite and online. The guiding principle is respect and care for self and others. Examples of unacceptable behaviours include (not exhaustive):
- Offensive comments related to gender identity and expression, sexual orientation, disability, mental illness, neuro(a)typicality, physical appearance, body size, race, or religion
- Gratuitous or off-topic sexual images or behavior in spaces where they are not appropriate
- Threats of violence or incitement of violence towards any individual, including encouraging a person to commit suicide or to engage in self-harm
- Publication of non-harassing private communication or another member's personal information without their explicit consent
The CoC applies to all GeekcampSG attendees, including organisers, sponsors, speakers and talk attendees.
Reporting violations
In the event that you need to report a CoC violation:
-
Reporting methods
- On-site
- Approach any Geekcamp organiser (wearing an Organiser shirt)
- Alternatively, head to the registration desk and inform the volunteers that you would like to report a violation.
- Online: Discord
- Create a ticket at Contact Us > #report-issue. A new, private ticket channel will be created under the Tickets category, where you can send a moderator more details on the violation.
- If you feel uncomfortable creating a ticket, feel free to reach out to us via private message.
- On-site
-
What to include when reporting
-
Identifying information of the participant doing the harassing
- On-site: Name and outfit description
- Online: Discord username (Username#1234), server nickname
- Discord username: Right-click on the participant’s profile picture.
- Server nickname: The name displayed on top of the message.
- The behaviour that was in violation
- The approximate time of the behaviour
- The circumstances surrounding the incident
-
Evidence of the violation, if available
- Online: A screenshot of the conversation where the violation occurred
-
Identifying information of the participant doing the harassing
We will respect confidentiality requests for the purpose of protecting victims of abuse. At our discretion, we may publicly name a person about whom we’ve received harassment complaints. We will not name harassment victims without their affirmative consent.
Consequences
The participant will face the following, in order of increasing severity:
-
Time-out
If a participant has exhibited concerning behavior, as outlined in the rules, they may be pulled into timeout. During timeout, the participant will have a discussion with our Code of Conduct representatives about any concerning behaviors until we have come to an agreement.
- On-site
The participant will be separated from other participants and have a discussion with our Code of Conduct representatives in a private setting.
- Online
The participant loses access to all channels on the Geekcamp server other than timeout. Only the timed-out participant and the mods will be able to see the conversation.
- On-site
-
Kicked from Geekcamp Conference
- On-site
The participant will be escorted off the premises and will not be allowed to re-enter.
- Online
The user will be banned from the Geekcamp Discord server.
- On-site
-
Escalation to authorities
- On-site
Geekcamp organisers will liaise with the venue host to initiate actions such as reporting to building security and/or police for their follow-up action.
- Online
Geekcamp organisers will provide supporting evidence to Discord administrators and/or local law enforcement authorities for their follow-up action.
- On-site