What we're about

At the San Francisco JUG you get to meet other local Java professionals and talk about code, architecture, innovation, opportunities, and share ideas about real-world problems. Want to submit a talk? Contact us via the meetup page, or at @pieterhumphrey on Twitter.
Recordings are posted on our YouTube channel
Our meetings are technically focused and often include expert speakers on Java-related topics.
We welcome both beginners and gurus, both developers and managers, both geeks and professionals.
We typically meet on Wednesdays from 6:30-8pm of each month and our meetings are FREE and OPEN to the public.
If you're new, please refer to a Code of Conduct that we expect from our community members, used by EddieHub http://coc.eddiehub.org/
If you are an employer, a recruiter, or simply someone looking for Java employment opportunities, check out Discussions -> Message Board -> Job Listings (http://www.sfjava.org/messages/boards/forum/1298941) (you can track this forum to get email notifications)
Follow us at @sfjug! (https://twitter.com/sfjug)
Your hosts,
@pieterhumphrey & @direherring & @djrooz
Sponsored by @logic2020 / www.logic2020.com

Upcoming events (2)

Ballerina: A language to develop, consume and combine network services

Join the zoom at 6:30 pm US pacific time! The audio doesn't start until we do, so don't worry if you don't hear anything at first.

Ballerina is a modern, general-purpose programming language that makes it easy to develop and consume network services. It's a pragmatic language with familiar C-style syntax combined with explicit error handling, static types, concurrency safety to make programs reliable and maintainable. The current compiler produces JVM bytecodes; hence, it can fit anywhere Java is used. Also, the Java interoperability in the language makes Ballerina compatible with most existing java libraries.

Typically, applications reuse code by linking software libraries. But today, more and more applications reuse code by consuming services over the network, typically JSON over HTTP. APIs that matter are primarily network APIs. This shift to the cloud has changed programming, and there is a need for new abstractions in languages to improve developers' productivity.

Ballerina offers network primitives in the language to simplify developing and deploying services in the cloud. Services with resource and remote functions, clients, and interactions are higher-level concepts in the language designed to hide the complexities of working over the network. The syntax and semantics of these abstractions are designed to maintain source-diagram duality, enabling developers to visualize any ballerina program as a sequence diagram. Ballerina also simplifies deploying Ballerina code onto the cloud, allowing those without in-depth knowledge about Kubernetes to write the logic and deploy that code onto cloud platforms such as Kubernetes.

Sameera Jayasoma is the head of architecture for Ballerina at WSO2. He is one of the designers of the Ballerina language and platform capabilities. He's been working at WSO2 for 14 years and contributed to WSO2 Carbon and Update Manager projects. He likes to engage in wildlife and landscape photography and enjoys pacific northwest hiking. Twitter: https://twitter.com/sameerajayasoma

Patterns, Predictions, and Prescriptions

Needs a location

Join the zoom at 6:30 pm US pacific time! The audio doesn't start until we do, so don't worry if you don't hear anything at first.

"One of the most interesting aspects of the world is that it can be considered to be made up of patterns"
Norbert Wiener (1940s)

We are entering a new and long-tail phase of software development with Machine Learning (ML). ML, a subset of AI, is the ability of a machine to produce accurate results for a particular problem without any explicit programming. These predictive results are derived from recognizing patterns in large data sets.

We are effectively giving machines the ability to gain experience.

This megatrend affects our applications, software tools, data structures, systems architecture, new hardware approaches, business processes, organizational interactions, enterprise strategies, government behavior, geopolitical strengths, ethics, data privacy, etc. In essence, ML is an inflection point for computing, enterprises, countries, humanity, and civilization.

We’ll explore some basic ML use cases, take a look at JSR #381 (Visual Recognition for Java), and then dive into issues, strategies, and the near-term and long-term directions of ML.

Senior Technology Consultant and Chairman @NYJavaSIG
Frank Greco is a senior consultant and enterprise architect with cloud, mobile computing, and machine learning experience located in the NY/NJ area. He is a frequent writer/blogger and author as well as additional achievements with startups, strategic technology/business partnerships, enterprise infrastructure, and emerging technologies, particularly for large enterprises. Co-author of #JSR 381 Visual Recognition for Java and a huge proponent of Java for Machine Learning.
Frank is a frequent global speaker at major technology trade shows such as JavaOne/CodeOne, QCon, Jfokus, Devoxx, et al. He chairs the "Enterprise IT Technology" and "Machine Learning for the Enterprise" conferences for Technology Transfer in Europe.
He is the Chairman of the NYJavaSIG (8.5K+ members), the largest (and first ever) Java User Group in North America, and has a deep understanding of developer communities, education/curriculum design, and diversity programs. Frank was recognized with the title "Java Champion" by Sun/Oracle as a leader and visionary in the Java Technology community.
In addition to his strong expertise in enterprise IT, Frank is also a semi-professional musician, decent cook, and terrible fisherman.

Past events (184)

How Micronaut Practices Developer Productivity Engineering

Needs a location

Photos (992)

Find us also at