Miki Tebeka
A person (arguably)
Binyamina, Israel
Actions
Miki has a passion for teaching and mentoring. He teaches many workshops onvarious technical subjects all over the world and also mentored many youngdevelopers on their way to success.
Miki is involved in open source, has several projects of his own, and contributed to several more - including the Go and Pythonprojects.
He has been using Go for more than 13 years and Python for 25.
Miki wrote several books, is an author in LinkedIn Learning, an organizer of Go Israel Meetup, GopherCon Israel, and PyData Israel Conference.
Area of Expertise
All Your Schemas Are Belong To Us
You placed a simple API over your user store. It's simple - the client provides the user ID, you get it from the database, convert to JSON and done! One more JIRA ticket to close. Congratulations! You just created both a huge technical debt and a security hole.
By tangling the database schema, with the business object and the API layer, you make it very hard to make schema changes. Also, if someone adds the user authentication token to the database, it'll automatically go out to any client.
In this talk, I'll make a claim that you should keep the database, business and API data models separate. Even at the cost of code duplication.
A Deep Dive Into Go Interfaces
Go's approach to interfaces is pretty unique. In this talk we'll see how interfaces are implemented and why you should care. We'll discuss interface design, and see how to keep them small. Finally we'll take a look at various interfaces in the standard library.
4 Languages You Should Learn
Maslow's hammer states that "If all you have is a hammer, everything looks like a nail." Programming language are the tools you use to solve problems and knowing more than one kind will expand your toolbox and make you a better problem solver.
Looping in Go: More than just a "for"
Quiz: What will the following print?
ch := make(chan int)
go func() {
for i := 0; i < 3; i++ {
ch <- i
}
}()
for v := range ch {
fmt.Printf("%d ", v)
}
Try it out at https://go.dev/play/p/of9h9opY_VS, did you guess right?
In this talk we'll cover the various ways you can loop in Go and cover their semantics.
We'll loop over integers, slices, maps and channels and see the various semantics they present.
Finally, we'll cover the new looping directive that came in Go 1.22 and take a look at the good old `goto`.
Some assembly required, no dinosaurs¹ will be harmed during this talk.
[1] https://xkcd.com/292/
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top