DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Enterprise AI Trend Report: Gain insights on ethical AI, MLOps, generative AI, large language models, and much more.

2024 Cloud survey: Share your insights on microservices, containers, K8s, CI/CD, and DevOps (+ enter a $750 raffle!) for our Trend Reports.

PostgreSQL: Learn about the open-source RDBMS' advanced capabilities, core components, common commands and functions, and general DBA tasks.

AI Automation Essentials. Check out the latest Refcard on all things AI automation, including model training, data security, and more.

Core Badge
Avatar

Shai Almog

DZone Core CORE

OSS Hacker, Developer Advocate and Entrepreneur at Codename One

Tel Aviv, IL

Joined Nov 1998

https://debugagent.com/

About

Software developer with ~30 years of professional experience in a multitude of platforms/languages. JavaOne rockstar/highly rated speaker, author, blogger and open source hacker. Shai has extensive experience in the full stack of backend, desktop and mobile. This includes going all the way into the internals of VM implementation, debuggers etc. Shai started working with Java in 96 (the first public beta) and later on moved to VM porting/authoring/internals and development tools. Shai is the co-founder of Codename One, an Open Source project allowing Java developers to build native applications for all mobile platforms in Java. He's the coauthor of the open source LWUIT project from Sun Microsystems and has developed/worked on countless other projects both open source and closed source. Shai is also a developer advocate at Lightrun.

Stats

Reputation: 5934
Pageviews: 839.1K
Articles: 91
Comments: 84

Expertise

Java Expertise Icon

Java

Maintenance Expertise Icon

Maintenance

  • Articles
  • Trend Reports
  • Events
  • Comments

Articles

article thumbnail
Debugging Streams With Peek
Learn how to debug Java streams effectively using the peek() method with practical examples and tips for optimizing your code.
March 20, 2024
· 3,161 Views · 3 Likes
article thumbnail
Debugging Using JMX Revisited
Learn how to leverage JMX and Spring Boot for advanced debugging and management, enabling efficient monitoring and control of Java applications.
March 8, 2024
· 5,155 Views · 3 Likes
article thumbnail
Unleashing the Power of Git Bisect
Explore how to use git bisect for efficient debugging, including tips on automating the process and handling skipped commits in your projects.
February 22, 2024
· 5,052 Views · 4 Likes
article thumbnail
The Best Way To Diagnose a Patient Is To Cut Him Open
Explore modern debugging beyond print statements, highlighting tools like tracepoints and object marking for efficient problem-solving.
February 13, 2024
· 3,359 Views · 2 Likes
article thumbnail
Strace Revisited: Simple Is Beautiful
Explore strace for Linux debugging: origins, usage, JVM insights, and advanced tips in an in-depth, easy-to-follow guide.
February 6, 2024
· 3,203 Views · 2 Likes
article thumbnail
DTrace Revisited: Advanced Debugging Techniques
Explore the power of DTrace for system debugging and optimization in this comprehensive guide on its capabilities, performance, and applications.
January 30, 2024
· 1,734 Views · 3 Likes
article thumbnail
Building gdocweb With Java 21, Spring Boot 3.x, and Beyond
Explore the journey of building gdocweb: a developer's insight into choosing Java 21, Spring Boot 3.x, and navigating tech stack challenges.
January 24, 2024
· 4,203 Views · 2 Likes
article thumbnail
Not a Single Trace
Observability is an orchestra, not a single instrument. By combining multiple data points, we form an accurate production narrative to resolve issues.
October 4, 2023
· 3,849 Views · 4 Likes
article thumbnail
Debugging Tips and Tricks: A Comprehensive Guide
Master the art of debugging with strategies like Rubber Ducking, leveraging tools, and systematic checklists. Turn challenges into rewarding puzzles!
September 26, 2023
· 1,953 Views · 4 Likes
article thumbnail
The Systemic Process of Debugging
Explore the academic theory of the debugging process, focusing on issue tracking, team communication, and the balance between unit-to-integration tests.
September 19, 2023
· 2,316 Views · 5 Likes
article thumbnail
Eliminating Bugs Using the Tong Motion Approach
Delve into a two-pronged strategy that streamlines debugging, enabling developers to swiftly pinpoint and resolve elusive software glitches.
September 12, 2023
· 1,433 Views · 2 Likes
article thumbnail
The Evolution of Bugs
Unlock the secrets of debugging in software development. Dive deep into state bugs, thread issues, race conditions, and performance pitfalls.
September 5, 2023
· 3,423 Views · 4 Likes
article thumbnail
It’s 2 AM. Do You Know What Your Code Is Doing?
There's a newer approach to developer observability that helps us gain deeper understanding. Learn how your code works in production, not in theory.
August 22, 2023
· 3,522 Views · 5 Likes
article thumbnail
Debugging as a Process of Isolating Assumptions
When looking at a vast project, how do we know the direction to narrow assumptions during debugging? When should we backtrack and rethink?
August 15, 2023
· 1,889 Views · 2 Likes
article thumbnail
Understanding Security Vulnerabilities: A First Step in Preventing Attacks
What are the common vulnerabilities we need to be aware of? How do they look, and how can we better protect ourselves from these common attacks?
August 10, 2023
· 3,246 Views · 4 Likes
article thumbnail
Is OpenJDK Just a Drop-In Replacement?
What are the pitfalls in replacing OracleJDK with OpenJDK? Simon Ritter has some interesting observations in his new free new book. Here's the TL;DR.
August 8, 2023
· 4,730 Views · 5 Likes
article thumbnail
Can't Reproduce a Bug?
"It works on my machine" is never an excuse. Sometimes we have bugs that we can't reproduce or understand. How do we investigate these elusive bugs?
August 4, 2023
· 5,230 Views · 2 Likes
article thumbnail
The Theory of Debugging
What do you do when you have a bug? Using a well-defined process instead of looking everywhere can significantly change the issue resolution process.
July 20, 2023
· 6,191 Views · 6 Likes
article thumbnail
Building for Failure: Best Practices for Easy Production Debugging
Applications fail, that's inevitable. All the testing, QA, CI and defensive programming can make this a rare occurrence, but can't eliminate failure.
July 12, 2023
· 2,750 Views · 2 Likes
article thumbnail
GraphQL, JavaScript, Preprocessor, SQL, and More in Manifold
In this final installment of the Manifold series, we discuss the final integrations and review the benefits. I also discuss using it in my new project.
July 5, 2023
· 6,667 Views · 3 Likes
article thumbnail
Everything Bad in Java Is Good for You
Nulls and checked exceptions are often promoted as "bad things" in Java, this isn't the case. Both carry significant advantage over the alternatives.
June 13, 2023
· 8,757 Views · 17 Likes
article thumbnail
Manifold vs. Lombok: Enhancing Java With Property Support
Two decades ago, we worked on properties in Java. Lombok filled in that gap. Manifold aims to solve this same problem. Is it ready for prime time?
June 7, 2023
· 3,935 Views · 4 Likes
article thumbnail
Operator Overloading in Java
Write expressions like (myBigDecimalMap[ObjectKey] * 5 > 20) in Java... Manifold makes that happen. Expressions like "5 mph * 3 hr" produces distance!
May 31, 2023
· 4,433 Views · 4 Likes
article thumbnail
Extending Java APIs: Add Missing Features Without the Hassle
Do you ever pull your hair out in frustration, asking why isn't this part of the Java API? Thanks to Manifold, you can solve that problem for everyone.
May 24, 2023
· 6,545 Views · 7 Likes
article thumbnail
Logging Best Practices Revisited [Video]
Join a discussion on logging and how observability shouldn't just be the forte of DevOps. Logs are much more than just debug printouts.
May 15, 2023
· 3,513 Views · 7 Likes
article thumbnail
Java String Templates Today
String manipulation is improving with JEP 430, but Manifold can help us today. Even on JDK 8, it goes further with a sophisticated templating engine.
May 12, 2023
· 8,766 Views · 5 Likes
article thumbnail
Revolutionize JSON Parsing in Java With Manifold
Parsing JSON in Java (and other formats) can be as easy as in JavaScript. It can do much more while keeping the type-safety and deep IDE integration.
May 3, 2023
· 6,432 Views · 6 Likes
article thumbnail
Spring Boot Debugging With Aspect-Oriented Programming (AOP)
Does your application fail CI tests "sometimes"? Does it display flaky behavior? Did you add many logs trying to solve it? There's a better way: AOP!
April 25, 2023
· 2,284 Views · 1 Like
article thumbnail
Continuing Hello World
The way we teach programming and new platforms needs to be more engaging. This same lesson applies to SaaS startup gamification.
April 20, 2023
· 6,549 Views · 2 Likes
article thumbnail
Relearning Java Thread Primitives
Synchronized was revolutionary and still has great uses. But it's time to move to newer thread primitives and, potentially, rethink our core logic.
April 12, 2023
· 7,794 Views · 9 Likes

Trend Reports

Trend Report

Software Integration

Seamless communication — that, among other consequential advantages, is the ultimate goal when integrating your software. And today, integrating modern software means fusing various applications and/or systems — many times across distributed environments — with the common goal of unifying isolated data. This effort often signifies the transition of legacy applications to cloud-based systems and messaging infrastructure via microservices and REST APIs.So what's next? Where is the path to seamless communication and nuanced architecture taking us? Dive into our 2023 Software Integration Trend Report and fill the gaps among modern integration practices by exploring trends in APIs, microservices, and cloud-based systems and migrations. You have to integrate to innovate!

Software Integration

Events

Watch

On Demand Event Thumbnail

Containers: Moderization and Advancements in Cloud-Native Development

Presenter: D2iQ

Watch

On Demand Event Thumbnail

Software Integration: The Intersection of APIs, Microservices, and Cloud-Based Systems

Presenter: DZone

Comments

Extending Java APIs: Add Missing Features Without the Hassle

Jul 10, 2023 · Shai Almog

This was raised in the manifold slack and it isn't as simple as one might think since null is deeply ingrained in Java.

I'm guessing one can use the expression language to write a slightly shorter syntax than the optional syntax but I'm not sure how applicable it would be.

GraphQL, JavaScript, Preprocessor, SQL, and More in Manifold

Jul 09, 2023 · Shai Almog

The specific GraphQL docs are pretty lacking. Unfortunately, I don't have too much experience with GraphQL so I couldn't do their implementation justice. There's the sample app here: https://github.com/manifold-systems/manifold-sample-graphql-app/

But I would suggest asking in the slack channel as Scott is pretty responsive to queries there.

Everything Bad in Java Is Good for You

Jun 22, 2023 · Shai Almog

For most cases where we have a natural value for an object that isn't null we should assign it when creating the variable. This can be by making a field final and requiring the value in the constructor etc.

But let's look at the cases where there's no such "natural" non-null object. If we still choose to make the object non-null then we allocate a "dummy" object to serve as a placeholder just so we can discard it later.

The cost in performance depends on what the compiler will translate your non-null code to. In some cases this is translated to null but usually this isn't the case. Currently Optional has noticeable (albeit small) overhead. But other compile time options might not be able to use null in all the same cases. Non-null is an abstraction over null and abstractions tend to leak in unpredictable ways.

Everything Bad in Java Is Good for You

Jun 21, 2023 · Shai Almog

I meant Kotlins approach etc.

Everything Bad in Java Is Good for You

Jun 21, 2023 · Shai Almog

Not really because they didn't publish the final syntax but as far as we know it will only be a marker tag indicating that it will be non-null. As far as I understood enforcement at the compiler level won't be deep since they can't change libraries etc. Previously they had syntax that denoted this in the class level indicating that an object lacks "identity" which is a synonym to pointer.

Everything Bad in Java Is Good for You

Jun 21, 2023 · Shai Almog

Notice I mentioned that Valhalla will add a not-null marker which is important for memory layout. Yes, that should go into the language but it's a different thing from the systems used by other languages.

Everything Bad in Java Is Good for You

Jun 20, 2023 · Shai Almog

That's a great point. This indeed drew some inspiration for a trend of that time called "design by contract". That mostly focused on asserts but the idea was to map all the various ways the object can fail for bad input.

This is also very powerful in combination with JavaDoc.

Boldness in Refactoring

Apr 13, 2023 · Shai Almog

Right, I meant to say code rot.

Open Source Maintenance Is Community Organizing

Mar 07, 2023 · Shai Almog

Unfortunately the links in the post were removed during editing. The original is here: https://debugagent.com/open-source-maintenance-is-community-organizing

Is It Time To Go Back to the Monolith?

Feb 22, 2023 · Shai Almog

Yes. I did mention the events but didn't want to get into the nuances of the implementation. Since it's relatively young, I'm not sure if it will be a decent replacement to Kafka but it is a very interesting project.

The Reason Java Is Still Popular

Oct 05, 2022 · Shai Almog

That's why I mentioned Lombok which is still applicable. Records are improving though.

I think the lambda implementation was a bit broken which is the one problem with checked exceptions. I blame the lambda, not the exceptions.

I agree, a lot of complexity was added but newer languages are even more complex and don't have the same level of functionality. With the exception of JVM languages.

Quiet Quitting Is About Loyalty

Oct 04, 2022 · Shai Almog

I think everyone defines this a bit differently. There's also the quiet firing where bosses assign bad tasks and create an unpleasant work environment.

I picked the more widely understood version of quiet quitting: doing exactly what the job description says. No more. No less. It's a legitimate thing. What's interesting is that it's a change for a lot of people. Why would people change that behavior?

Because the dime dropped for a lot of them. They understand their employer will dump them in a heartbeat, regardless of how hard they work. No reason to go the extra mile. That's OK when talking about overtime. It's not so great if you don't document your code because well documented code isn't benchmarked in your quarterly reviews.

Quiet Quitting Is About Loyalty

Sep 30, 2022 · Shai Almog

Great quote!
A boss should never demand loyalty. It's something that's earned.

10 JetBrains Extensions to Fight Technical Debt

Mar 25, 2022 · Alex Omeyer

I'm not sure if Lightrun fits into the "fight technical debt" but debugging production is pretty much a universal "fixer" problem. I think our plugin is probably one of the coolest around (in my not so subjective opinion): https://lightrun.com/

FOSDEM 2022 Conference Report

Mar 01, 2022 · Reza Rahman

Great seeing your talks there!

Generally virtual conferences have a problem of audience participation. I noticed FOSDEM was MUCH better than the median cookie cutter conference in terms of participation. Not sure if it was due to the foojay room we were in or the conference itself though.

JxBrowser and JCEF

Jan 18, 2022 · Vladyslav Lubenskyi

It took well over a month of work. The main work was around the deployment of the native libraries and a lot went into the media code so it would use CEF instead of the built-in APIs of FX. That required recompiling CEF for every platform which took a lot of effort. Steve Hannah did most of the work there. I can connect you to him if you're interested. You can see the stuff he did in our repo: https://github.com/codenameone/CodenameOne/

JxBrowser and JCEF

Jan 18, 2022 · Vladyslav Lubenskyi

Did you two coordinate this?
https://dzone.com/articles/jxbrowser-and-javafx-webview

We use JCEF but played with JxBrowser in the past. It seems like an excellent solution. Since we're an open source project we picked CEF but it was a pretty challenging process.

JxBrowser and JavaFX WebView

Jan 18, 2022 · Vladimir Ikryanov

It was an uphill battle too. We had to compile our own version of CEF because the default version doesn't include support for 264 playback. That took a lot of time and pain.

But the end result is a modern/consistent browser over which we have more control regardless of the underlying JDK. So it paid off. Removing the FX dependency is a huge advantage.

JxBrowser and JavaFX WebView

Jan 15, 2022 · Vladimir Ikryanov

We chose to go with JCEF which is used by Intellij as well.

How to Do UUID as Primary Keys the Right Way

Jan 03, 2022 · Bertrand Florat

I very much agree with the UUID usage in DBs but some people don't: https://github.com/jhipster/generator-jhipster/issues/3060

To be fair, they are correct. There is a performance impact. I think it's something most of us can live with.

Reverse Debugging - What You Should Know

Nov 18, 2021 · Ogundiran Ayobami

The common term is time travel debugging. E.g. https://www.replay.io/

10 Reasons Why WebStorm Is Better Than Visual Studio Code

May 27, 2020 · Tara Simpson

Do you work for free?

Why do you expect professional developers who build tools to do what you don't?
If you can't spend on your craft then you're a hobbyist not a professional. When there's a better free product then I use it (e.g. Linux) but when the product delivers a lot of value over a free product then I make the calculation of my time that's saved. My time isn't free.

FYI If you mean "open source" then the core of webstorm is open source.

BTW Visual Studio Code also has a commercial portion that isn't "free"...

Kotlin vs. React Native: Which Is Better?

Mar 20, 2018 · Nyma Malik

I think you should compare react native to Kotlin Native or Kotlin + Codename One.

Serverless Application with Google Flutter and Lambda

Mar 16, 2018 · Mohamed Labouardy

FYI All of the 4 things you mentioned at the bottom of the article as downsides of flutter don't exist in Codename One plus a lot of other advantages...

Eclipse: Still the Best IDE!

Feb 08, 2018 · Brian Fernandes

I work with all 3 IDE's since we produce plugins for all of them. Eclipse improved recently but it still lacks some capabilities e.g. the debugger in IntelliJ renders values of variables next to the line where they are mentioned... Eclipse has some power but it's very "opinionated" this isn't necessarilly bad but it makes it harder for beginners.

Native JavaFX Apps With Automatic Updates: FXLauncher

Feb 15, 2016 · Edvin Syse

I like some of the concepts of javafxpackager but from our experience with it I was pretty disappointed by the implementation. Its pretty buggy and spartan.

It seems that with every release of Java a new team comes along and completely reinvents distribution (webstart rewrites, Java plugin, packager etc.). The problem is that all of these approaches are damn awful. E.g. fxpackager needs both a Mac and a Windows machine. Signing (which is required on Mac OS) is a HUGE pain.

So FXLauncher looks promissing but the underlying fxpackager is the true problem.

Java Garbage Collection Explained [Comic]

Jan 01, 2016 · Daniel Stori

;-)

I would use the analogy of a cleaning person picking up the garbage. So he first comes along to check if the garbage is used by anyone and places a yellow sticker on everything that's used. Then he indiscriminately throws away everything that doesn't have a yellow sticker on it.

GC's are actually remarkably simple, its the implementation that gets a bit tricky specifically in regards to threads...

I Hate Global.asax

Jul 01, 2015 · Tony Thomas

You should note in the article that this process is illegal and violates Apple's ToS. I doubt this will ever reach a court case or even trigger banning but Apple doesn't allow Mac OS virtualization unless it is done on a physical Mac machine.

So this process might be reasonable for a hobbyist but its not something you should be doing if you work for a major company.

At Codename One we use Mac's that we host in the cloud for our service and will soon also offer support to automatically generate the certificates for them. We also use them for the xcode build process so the full package can be maintained and still be 100% legal.

A How to Guide on Developing an iOS App on a Windows PC

Jul 01, 2015 · Peter Soloninka

You should note in the article that this process is illegal and violates Apple's ToS. I doubt this will ever reach a court case or even trigger banning but Apple doesn't allow Mac OS virtualization unless it is done on a physical Mac machine.

So this process might be reasonable for a hobbyist but its not something you should be doing if you work for a major company.

At Codename One we use Mac's that we host in the cloud for our service and will soon also offer support to automatically generate the certificates for them. We also use them for the xcode build process so the full package can be maintained and still be 100% legal.

WORA Is Better Than Native

Sep 15, 2014 · Shai Almog

Notice that the dzone bar hides the actual page! Just press the x on it and the real link should open properly!
SwingSet on Griffon

Jun 19, 2014 · Mr B Loid

I didn't hide behind a fake name like some people do, I clearly state my bias and yes I provided a link. I dislike it when companies present their product as a solution that's new when its pretty far from that, especially when their product is snake oil. In this case its the cloud build aspect, this puts a bad spin on the whole industry and hurts us all.

So when someone puts out a product/announcement in our field that I feel is wrong and misleading should I ignore it? Use a fake name? Hide my bias? Praise them?

I tried to be polite rather than downright disparaging and the best I could come up with was passive aggressive. Feel free to suggest some other way I could phrase my point more clearly.

SwingSet on Griffon

Jun 19, 2014 · Mr B Loid

I didn't hide behind a fake name like some people do, I clearly state my bias and yes I provided a link. I dislike it when companies present their product as a solution that's new when its pretty far from that, especially when their product is snake oil. In this case its the cloud build aspect, this puts a bad spin on the whole industry and hurts us all.

So when someone puts out a product/announcement in our field that I feel is wrong and misleading should I ignore it? Use a fake name? Hide my bias? Praise them?

I tried to be polite rather than downright disparaging and the best I could come up with was passive aggressive. Feel free to suggest some other way I could phrase my point more clearly.

SwingSet on Griffon

Jun 19, 2014 · Mr B Loid

I didn't hide behind a fake name like some people do, I clearly state my bias and yes I provided a link. I dislike it when companies present their product as a solution that's new when its pretty far from that, especially when their product is snake oil. In this case its the cloud build aspect, this puts a bad spin on the whole industry and hurts us all.

So when someone puts out a product/announcement in our field that I feel is wrong and misleading should I ignore it? Use a fake name? Hide my bias? Praise them?

I tried to be polite rather than downright disparaging and the best I could come up with was passive aggressive. Feel free to suggest some other way I could phrase my point more clearly.

SwingSet on Griffon

Jun 19, 2014 · Mr B Loid

I didn't hide behind a fake name like some people do, I clearly state my bias and yes I provided a link. I dislike it when companies present their product as a solution that's new when its pretty far from that, especially when their product is snake oil. In this case its the cloud build aspect, this puts a bad spin on the whole industry and hurts us all.

So when someone puts out a product/announcement in our field that I feel is wrong and misleading should I ignore it? Use a fake name? Hide my bias? Praise them?

I tried to be polite rather than downright disparaging and the best I could come up with was passive aggressive. Feel free to suggest some other way I could phrase my point more clearly.

SwingSet on Griffon

Jun 19, 2014 · Mr B Loid

I didn't hide behind a fake name like some people do, I clearly state my bias and yes I provided a link. I dislike it when companies present their product as a solution that's new when its pretty far from that, especially when their product is snake oil. In this case its the cloud build aspect, this puts a bad spin on the whole industry and hurts us all.

So when someone puts out a product/announcement in our field that I feel is wrong and misleading should I ignore it? Use a fake name? Hide my bias? Praise them?

I tried to be polite rather than downright disparaging and the best I could come up with was passive aggressive. Feel free to suggest some other way I could phrase my point more clearly.

SwingSet on Griffon

Jun 19, 2014 · Mr B Loid

I didn't hide behind a fake name like some people do, I clearly state my bias and yes I provided a link. I dislike it when companies present their product as a solution that's new when its pretty far from that, especially when their product is snake oil. In this case its the cloud build aspect, this puts a bad spin on the whole industry and hurts us all.

So when someone puts out a product/announcement in our field that I feel is wrong and misleading should I ignore it? Use a fake name? Hide my bias? Praise them?

I tried to be polite rather than downright disparaging and the best I could come up with was passive aggressive. Feel free to suggest some other way I could phrase my point more clearly.

SwingSet on Griffon

Jun 19, 2014 · Mr B Loid

I didn't hide behind a fake name like some people do, I clearly state my bias and yes I provided a link. I dislike it when companies present their product as a solution that's new when its pretty far from that, especially when their product is snake oil. In this case its the cloud build aspect, this puts a bad spin on the whole industry and hurts us all.

So when someone puts out a product/announcement in our field that I feel is wrong and misleading should I ignore it? Use a fake name? Hide my bias? Praise them?

I tried to be polite rather than downright disparaging and the best I could come up with was passive aggressive. Feel free to suggest some other way I could phrase my point more clearly.

SwingSet on Griffon

Jun 19, 2014 · Mr B Loid

That's not very different from Appcelerator which pretty much means it suffers from the exact same problems, notice that they don't offer cloud builds... Remote compilation can't work for cases like this since the difference between the platforms is too great e.g. order of event delivery, basic UI construct behavior/availability etc.

So in that case you need a REALLY powerful debugger architecture to debug on the device hence remote compilation makes no sense. You guys have a lot of HTML experience, native is different. That's why we took a different approach with Codename One, but good luck with that anyway.

The Mobile Landscape: Cross-Platform Problems and Solutions

Jun 13, 2014 · Alec Noller

You failed to mention Codename One which doesn't quite fit any of the categories you mentioned but being completely based on Java is probably more relevant to the java dzone readership than all of the tools mentioned in the report.

WebSphere Portal 6.1 Performance Tuning on Windows

Feb 16, 2014 · Tim Im

We just stayed with the existing SVN for now, its both history and workspace design choices that make sense in an SVN deployment that are a problem.

I'm sure we can restructure the project in some way to fit git/github but we decided its not worth our hassle. E.g. our chief codebase: http://code.google.com/p/codenameone
Is currently over 7.5gb. Yes that includes some binary files but we need to host them somewhere so this saves us a great deal of hassle.

Its also remarkably difficult/impossible to delete history from SVN so the process of removing history we don't need (e.g. for the binary files) is problematic.


We're currently sticking to something that works until Google kills Google code (which I presume they will). Then we will probably be forced to migrate, hopefully by then Github would support multi-gigabyte repositories and we would be able to take the lazy approach.

WebSphere Portal 6.1 Performance Tuning on Windows

Feb 16, 2014 · Tim Im

We just stayed with the existing SVN for now, its both history and workspace design choices that make sense in an SVN deployment that are a problem.

I'm sure we can restructure the project in some way to fit git/github but we decided its not worth our hassle. E.g. our chief codebase: http://code.google.com/p/codenameone
Is currently over 7.5gb. Yes that includes some binary files but we need to host them somewhere so this saves us a great deal of hassle.

Its also remarkably difficult/impossible to delete history from SVN so the process of removing history we don't need (e.g. for the binary files) is problematic.


We're currently sticking to something that works until Google kills Google code (which I presume they will). Then we will probably be forced to migrate, hopefully by then Github would support multi-gigabyte repositories and we would be able to take the lazy approach.

WebSphere Portal 6.1 Performance Tuning on Windows

Feb 16, 2014 · Tim Im

We just stayed with the existing SVN for now, its both history and workspace design choices that make sense in an SVN deployment that are a problem.

I'm sure we can restructure the project in some way to fit git/github but we decided its not worth our hassle. E.g. our chief codebase: http://code.google.com/p/codenameone
Is currently over 7.5gb. Yes that includes some binary files but we need to host them somewhere so this saves us a great deal of hassle.

Its also remarkably difficult/impossible to delete history from SVN so the process of removing history we don't need (e.g. for the binary files) is problematic.


We're currently sticking to something that works until Google kills Google code (which I presume they will). Then we will probably be forced to migrate, hopefully by then Github would support multi-gigabyte repositories and we would be able to take the lazy approach.

WebSphere Portal 6.1 Performance Tuning on Windows

Feb 16, 2014 · Tim Im

We just stayed with the existing SVN for now, its both history and workspace design choices that make sense in an SVN deployment that are a problem.

I'm sure we can restructure the project in some way to fit git/github but we decided its not worth our hassle. E.g. our chief codebase: http://code.google.com/p/codenameone
Is currently over 7.5gb. Yes that includes some binary files but we need to host them somewhere so this saves us a great deal of hassle.

Its also remarkably difficult/impossible to delete history from SVN so the process of removing history we don't need (e.g. for the binary files) is problematic.


We're currently sticking to something that works until Google kills Google code (which I presume they will). Then we will probably be forced to migrate, hopefully by then Github would support multi-gigabyte repositories and we would be able to take the lazy approach.

WebSphere Portal 6.1 Performance Tuning on Windows

Feb 16, 2014 · Tim Im

We just stayed with the existing SVN for now, its both history and workspace design choices that make sense in an SVN deployment that are a problem.

I'm sure we can restructure the project in some way to fit git/github but we decided its not worth our hassle. E.g. our chief codebase: http://code.google.com/p/codenameone
Is currently over 7.5gb. Yes that includes some binary files but we need to host them somewhere so this saves us a great deal of hassle.

Its also remarkably difficult/impossible to delete history from SVN so the process of removing history we don't need (e.g. for the binary files) is problematic.


We're currently sticking to something that works until Google kills Google code (which I presume they will). Then we will probably be forced to migrate, hopefully by then Github would support multi-gigabyte repositories and we would be able to take the lazy approach.

WebSphere Portal 6.1 Performance Tuning on Windows

Feb 16, 2014 · Tim Im

We just stayed with the existing SVN for now, its both history and workspace design choices that make sense in an SVN deployment that are a problem.

I'm sure we can restructure the project in some way to fit git/github but we decided its not worth our hassle. E.g. our chief codebase: http://code.google.com/p/codenameone
Is currently over 7.5gb. Yes that includes some binary files but we need to host them somewhere so this saves us a great deal of hassle.

Its also remarkably difficult/impossible to delete history from SVN so the process of removing history we don't need (e.g. for the binary files) is problematic.


We're currently sticking to something that works until Google kills Google code (which I presume they will). Then we will probably be forced to migrate, hopefully by then Github would support multi-gigabyte repositories and we would be able to take the lazy approach.

WebSphere Portal 6.1 Performance Tuning on Windows

Feb 16, 2014 · Tim Im

We just stayed with the existing SVN for now, its both history and workspace design choices that make sense in an SVN deployment that are a problem.

I'm sure we can restructure the project in some way to fit git/github but we decided its not worth our hassle. E.g. our chief codebase: http://code.google.com/p/codenameone
Is currently over 7.5gb. Yes that includes some binary files but we need to host them somewhere so this saves us a great deal of hassle.

Its also remarkably difficult/impossible to delete history from SVN so the process of removing history we don't need (e.g. for the binary files) is problematic.


We're currently sticking to something that works until Google kills Google code (which I presume they will). Then we will probably be forced to migrate, hopefully by then Github would support multi-gigabyte repositories and we would be able to take the lazy approach.

WebSphere Portal 6.1 Performance Tuning on Windows

Feb 16, 2014 · Tim Im

We just stayed with the existing SVN for now, its both history and workspace design choices that make sense in an SVN deployment that are a problem.

I'm sure we can restructure the project in some way to fit git/github but we decided its not worth our hassle. E.g. our chief codebase: http://code.google.com/p/codenameone
Is currently over 7.5gb. Yes that includes some binary files but we need to host them somewhere so this saves us a great deal of hassle.

Its also remarkably difficult/impossible to delete history from SVN so the process of removing history we don't need (e.g. for the binary files) is problematic.


We're currently sticking to something that works until Google kills Google code (which I presume they will). Then we will probably be forced to migrate, hopefully by then Github would support multi-gigabyte repositories and we would be able to take the lazy approach.

WebSphere Portal 6.1 Performance Tuning on Windows

Feb 16, 2014 · Tim Im

We just stayed with the existing SVN for now, its both history and workspace design choices that make sense in an SVN deployment that are a problem.

I'm sure we can restructure the project in some way to fit git/github but we decided its not worth our hassle. E.g. our chief codebase: http://code.google.com/p/codenameone
Is currently over 7.5gb. Yes that includes some binary files but we need to host them somewhere so this saves us a great deal of hassle.

Its also remarkably difficult/impossible to delete history from SVN so the process of removing history we don't need (e.g. for the binary files) is problematic.


We're currently sticking to something that works until Google kills Google code (which I presume they will). Then we will probably be forced to migrate, hopefully by then Github would support multi-gigabyte repositories and we would be able to take the lazy approach.

WebSphere Portal 6.1 Performance Tuning on Windows

Feb 16, 2014 · Tim Im

We just stayed with the existing SVN for now, its both history and workspace design choices that make sense in an SVN deployment that are a problem.

I'm sure we can restructure the project in some way to fit git/github but we decided its not worth our hassle. E.g. our chief codebase: http://code.google.com/p/codenameone
Is currently over 7.5gb. Yes that includes some binary files but we need to host them somewhere so this saves us a great deal of hassle.

Its also remarkably difficult/impossible to delete history from SVN so the process of removing history we don't need (e.g. for the binary files) is problematic.


We're currently sticking to something that works until Google kills Google code (which I presume they will). Then we will probably be forced to migrate, hopefully by then Github would support multi-gigabyte repositories and we would be able to take the lazy approach.

WebSphere Portal 6.1 Performance Tuning on Windows

Feb 16, 2014 · Tim Im

Unfortunately this only works for small projects.

We have quite a few large SVN repositories and once you cross the 1gb threshold github blocks your project. You need to start splitting up everything to smaller workspaces and that is a HUGE pain to do while maintaining the project history.

Arthropod – A Flash and AIR Debugger

Jan 24, 2014 · Mr B Loid

With your Java programming experience may I recommend Codename One for your next experiment?

(disclaimer: I'm the co-founder of Codename One)

The basic syntax of F# - keywords and constructs

Oct 30, 2013 · Tony Thomas

The improvements to the debugger are a big deal for me (also the native packaging is great).
Its the small things, being able to disable all breakpoints with one click (REALLY useful) better preview of variables in the debugger, hit count for breakpoints (HUGE) and being able to jump to the type of a specific variable!
Small things like that really make a huge difference in the day to day development.
Dynamic tasks with Rake

Jul 05, 2013 · jexenberger

Why didn't you mention Codename One ? (disclaimer: I'm one of the developers).
Its pretty different from everyone else you mentioned and far more complete than most.

SpringOne: Spring 3.0 session

May 03, 2013 · Mr B Loid

You should check out Codename One, our simulator is even better than Apples. We wrote our fair share of those in our days at Sun (WTK, SWTK etc.) so we know our stuff there.

WingSBuilder 1.0 released

Jan 13, 2012 · Mr B Loid

If its just an occasional freeze I will give it a try. Thanks.
WingSBuilder 1.0 released

Jan 13, 2012 · Mr B Loid

If its just an occasional freeze I will give it a try. Thanks.
WingSBuilder 1.0 released

Jan 13, 2012 · Mr B Loid

If its just an occasional freeze I will give it a try. Thanks.
WingSBuilder 1.0 released

Jan 13, 2012 · Mr B Loid

If its just an occasional freeze I will give it a try. Thanks.
WingSBuilder 1.0 released

Jan 13, 2012 · Mr B Loid

If its just an occasional freeze I will give it a try. Thanks.
WingSBuilder 1.0 released

Jan 13, 2012 · Mr B Loid

If its just an occasional freeze I will give it a try. Thanks.
WingSBuilder 1.0 released

Jan 13, 2012 · Mr B Loid

If its just an occasional freeze I will give it a try. Thanks.
WingSBuilder 1.0 released

Jan 13, 2012 · Mr B Loid

If its just an occasional freeze I will give it a try. Thanks.
WingSBuilder 1.0 released

Jan 13, 2012 · Mr B Loid

If its just an occasional freeze I will give it a try. Thanks.
WingSBuilder 1.0 released

Jan 13, 2012 · Mr B Loid

If its just an occasional freeze I will give it a try. Thanks.
WingSBuilder 1.0 released

Jan 13, 2012 · Mr B Loid

It looks really cool. I noticed on the website that Mac OS X Lion isn't supported yet, is there an ETA or workaround for that?

I'd like to try it out but I have Lion installed.

Java Unit testing with JUnit 4.x in Eclipse

Sep 05, 2011 · Lars Vogel

Is this an official app?

It gave me multiple errors, wouldn't install on the SD and looks like a clone of an iPhone interface without the level of refinement you would get on an iPhone (running on NexusOne). Is this a web app?

Efficient JNI programming II: Field and method access

Nov 19, 2010 · Mr B Loid

Its a common mistake to use the Android emulator. Unlike the iPhone/J2ME, Android has an "emulator" which runs the actual OS on an actual hardware stack which is why its so slow (you can disable the screen lock in the settings for the OS).

The solution is rather simple: get a device.

Running/debugging on the actual device with Android is faster than launching a J2ME simulator! You see all the printouts and exceptions in DDMS etc. That's one thing Google did really well.

If you must use the emulator remember you don't need to close it. You can just keep it running and the applications will load into it dynamically.

My rediscovery of vi

Sep 22, 2010 · Mr B Loid

You should have used LWUIT, you could have used one code base to target Android/RIM/JavaME with a much better looking/more powerful UI. Rotation, touch etc. all work right out of the box and the API is much easier to use/open source.
How to counter premature optimisation

Aug 13, 2010 · Tony Thomas

I'm not a fan of lawsuits but this has been brewing for 5 years so Google must have known. Oracle claims they actually copied Java source code and effectively relicensed it under an Apache license, that is a GPL violation and a fork.

I don't like the usage of the patent claims (personally very much against software patents) but if Google was negligent enough to use GPL licensed code and publish it as Apache licensed code they have only themselves to blame (I'm using a NexusOne myself so I seriously hope they come to an understanding and unify the Java brand rather than the current confusing mess).

How to counter premature optimisation

Aug 13, 2010 · Tony Thomas

I'm not a fan of lawsuits but this has been brewing for 5 years so Google must have known. Oracle claims they actually copied Java source code and effectively relicensed it under an Apache license, that is a GPL violation and a fork.

I don't like the usage of the patent claims (personally very much against software patents) but if Google was negligent enough to use GPL licensed code and publish it as Apache licensed code they have only themselves to blame (I'm using a NexusOne myself so I seriously hope they come to an understanding and unify the Java brand rather than the current confusing mess).

How to counter premature optimisation

Aug 13, 2010 · Tony Thomas

I'm not a fan of lawsuits but this has been brewing for 5 years so Google must have known. Oracle claims they actually copied Java source code and effectively relicensed it under an Apache license, that is a GPL violation and a fork.

I don't like the usage of the patent claims (personally very much against software patents) but if Google was negligent enough to use GPL licensed code and publish it as Apache licensed code they have only themselves to blame (I'm using a NexusOne myself so I seriously hope they come to an understanding and unify the Java brand rather than the current confusing mess).

Gaia Flash Framework Released

Jul 16, 2010 · Steven Sacks

I noticed the lack of mobile discussion except for a couple of Android related posts. I'm curious how the mobile crowd sees Java FX but I assume there aren't many mobile developers in the JavaLobby due to relatively low amounts of mobile content.

For that means I published an almost identical poll in my blog which attracts a good segment of the mobile Java developmnet community here: http://lwuit.blogspot.com/2010/07/how-can-oracle-make-javafx-more-popular.html

I'm curious if our results will be different due to the population segments.

Negative CAPTCHA

Jul 10, 2009 · Mr B Loid

I bought it last year at the previous J1 and I can't say I'm happy with it.

The product has a "WOW" effect on everyone who sees it and my girlfriend used it extensively at first in her studies but its sort of useless to us since then.

The main problem isn't the pen but the bundled software which is one of the worst I have ever used, on the Mac it was completely useless to me since it won't run on Tiger (don't get me started on Apple). On the PC its give and take whether it will actually work and sync with your particular PC, one worked for me and I wasn't successful since. I heard someone was able to use it on VirtualBox but I wasn't able to do so.

The software often grabs 100% CPU and is lacking basic features such as backup or export to externally supported formats such as MP3/JPEG etc. You can "backup" to the web but thats not quite what we want for our private documents...

So we can't share private notes with friends without placing things on the internet (a big psycological barrier forsome people even if the sharing is limited). Its also very inconvenient to use the software to view existing notes, its just slow and unintuitive.

So while the piano demo is cool and the device is remarkably impressive, it is ruined for us by the desktop software.

Services orchestration for AJAX - Execute process definition on the client side.

Apr 08, 2009 · Mr B Loid

Its greate that Google did the "right thing" by supporting JSP/Servlets, JPA and GWT. It would make moving our code to the app engine so much easier!

Now we just need to find a proper CMS that works on the APP engine and start moving our entire infrastructure. Maybe Magnolia can be adpated for that environment...

Unleash the power of the grid

Jun 30, 2008 · Stacy Doss

[quote]Huh. I don't remember hearing Steve badmouth 3G. The first generation of the iPhone didn't support it for reasons of cost and battery-life, but the new generation does, so if 3G is important to you then this is no longer an issue. [/quote]

Steve lied about 3G and battery life/form factor dismissing it as unecessary compared to Edge... He very specifically said that it wasn't important. This is obviously BS since this phone: http://www.sonyericsson.com/cws/products/mobilephones/overview/w880i?cc=us&lc=en was available about a year before the iPhone and has 3G with video phone front camera not to mention the size of the old iPod nano...

[quote]Try laying out an interface using Interface Builder and writing your application using the APIs. [/quote]

Try LWUIT and pretty soon Matisse for it.

[quote]Or go to the Apple web site and watch the WWDC keynote where several iPhone applications were demoed.[/quote]

Saw every single one of them and haven't seen anything impressive. The 3D looks reasonable but not much better than JSR 184 (M3G) which we had for ages, since its a standard OpenGL ES 1.1 implementation thats hardly a big deal... Not even version 2.0 so no shaders or anything special...

[quote]Can you point to any applications on any other mobile platform that even come close?[/quote]

http://www.sumea.com/

http://www.superscape.com/

[quote]The iPhone SDK is a real platform, which comes much closer to developing a desktop applications than any other mobile platform currently available.[/quote]

It comes close to developing Mac applications which is a HUGE pain and requires a Mac (which sadly I own, its a terrible computer but I digress).

Its very easy to build an SDK for one platform with one phone that has one resolution and not too many features, push is apparently a modern concept for iPhone developers... The SDK is weighed down by limitations both in access and licensing making it the typical Apple encumbarence nightmare.

Java ME is far from a panacea, its got its huge list of problems both compared to Java SE and to the iPhone. But you can do with it pretty much every single thing you can do with the iPhone and more. You can even do with it most of the things you can do on Android.

So its not the best platform in terms of development ease, deployment, uniformity or quality... However unlike the iPhone, people actually have devices that really work with this.

Apple has had a history of being developer hostile, canceling support for API's and dumping platforms despite strong guarantees in the past to support them. Very strict unapologetic licensing, limitations and lawsuits. If you want to develop for these guys, then enjoy but there is no technical superiority in the iPhone when compared to Java ME.

Unleash the power of the grid

Jun 30, 2008 · Stacy Doss

[quote]Huh. I don't remember hearing Steve badmouth 3G. The first generation of the iPhone didn't support it for reasons of cost and battery-life, but the new generation does, so if 3G is important to you then this is no longer an issue. [/quote]

Steve lied about 3G and battery life/form factor dismissing it as unecessary compared to Edge... He very specifically said that it wasn't important. This is obviously BS since this phone: http://www.sonyericsson.com/cws/products/mobilephones/overview/w880i?cc=us&lc=en was available about a year before the iPhone and has 3G with video phone front camera not to mention the size of the old iPod nano...

[quote]Try laying out an interface using Interface Builder and writing your application using the APIs. [/quote]

Try LWUIT and pretty soon Matisse for it.

[quote]Or go to the Apple web site and watch the WWDC keynote where several iPhone applications were demoed.[/quote]

Saw every single one of them and haven't seen anything impressive. The 3D looks reasonable but not much better than JSR 184 (M3G) which we had for ages, since its a standard OpenGL ES 1.1 implementation thats hardly a big deal... Not even version 2.0 so no shaders or anything special...

[quote]Can you point to any applications on any other mobile platform that even come close?[/quote]

http://www.sumea.com/

http://www.superscape.com/

[quote]The iPhone SDK is a real platform, which comes much closer to developing a desktop applications than any other mobile platform currently available.[/quote]

It comes close to developing Mac applications which is a HUGE pain and requires a Mac (which sadly I own, its a terrible computer but I digress).

Its very easy to build an SDK for one platform with one phone that has one resolution and not too many features, push is apparently a modern concept for iPhone developers... The SDK is weighed down by limitations both in access and licensing making it the typical Apple encumbarence nightmare.

Java ME is far from a panacea, its got its huge list of problems both compared to Java SE and to the iPhone. But you can do with it pretty much every single thing you can do with the iPhone and more. You can even do with it most of the things you can do on Android.

So its not the best platform in terms of development ease, deployment, uniformity or quality... However unlike the iPhone, people actually have devices that really work with this.

Apple has had a history of being developer hostile, canceling support for API's and dumping platforms despite strong guarantees in the past to support them. Very strict unapologetic licensing, limitations and lawsuits. If you want to develop for these guys, then enjoy but there is no technical superiority in the iPhone when compared to Java ME.

Unleash the power of the grid

Jun 30, 2008 · Stacy Doss

[quote]Huh. I don't remember hearing Steve badmouth 3G. The first generation of the iPhone didn't support it for reasons of cost and battery-life, but the new generation does, so if 3G is important to you then this is no longer an issue. [/quote]

Steve lied about 3G and battery life/form factor dismissing it as unecessary compared to Edge... He very specifically said that it wasn't important. This is obviously BS since this phone: http://www.sonyericsson.com/cws/products/mobilephones/overview/w880i?cc=us&lc=en was available about a year before the iPhone and has 3G with video phone front camera not to mention the size of the old iPod nano...

[quote]Try laying out an interface using Interface Builder and writing your application using the APIs. [/quote]

Try LWUIT and pretty soon Matisse for it.

[quote]Or go to the Apple web site and watch the WWDC keynote where several iPhone applications were demoed.[/quote]

Saw every single one of them and haven't seen anything impressive. The 3D looks reasonable but not much better than JSR 184 (M3G) which we had for ages, since its a standard OpenGL ES 1.1 implementation thats hardly a big deal... Not even version 2.0 so no shaders or anything special...

[quote]Can you point to any applications on any other mobile platform that even come close?[/quote]

http://www.sumea.com/

http://www.superscape.com/

[quote]The iPhone SDK is a real platform, which comes much closer to developing a desktop applications than any other mobile platform currently available.[/quote]

It comes close to developing Mac applications which is a HUGE pain and requires a Mac (which sadly I own, its a terrible computer but I digress).

Its very easy to build an SDK for one platform with one phone that has one resolution and not too many features, push is apparently a modern concept for iPhone developers... The SDK is weighed down by limitations both in access and licensing making it the typical Apple encumbarence nightmare.

Java ME is far from a panacea, its got its huge list of problems both compared to Java SE and to the iPhone. But you can do with it pretty much every single thing you can do with the iPhone and more. You can even do with it most of the things you can do on Android.

So its not the best platform in terms of development ease, deployment, uniformity or quality... However unlike the iPhone, people actually have devices that really work with this.

Apple has had a history of being developer hostile, canceling support for API's and dumping platforms despite strong guarantees in the past to support them. Very strict unapologetic licensing, limitations and lawsuits. If you want to develop for these guys, then enjoy but there is no technical superiority in the iPhone when compared to Java ME.

Unleash the power of the grid

Jun 30, 2008 · Stacy Doss

[quote]Huh. I don't remember hearing Steve badmouth 3G. The first generation of the iPhone didn't support it for reasons of cost and battery-life, but the new generation does, so if 3G is important to you then this is no longer an issue. [/quote]

Steve lied about 3G and battery life/form factor dismissing it as unecessary compared to Edge... He very specifically said that it wasn't important. This is obviously BS since this phone: http://www.sonyericsson.com/cws/products/mobilephones/overview/w880i?cc=us&lc=en was available about a year before the iPhone and has 3G with video phone front camera not to mention the size of the old iPod nano...

[quote]Try laying out an interface using Interface Builder and writing your application using the APIs. [/quote]

Try LWUIT and pretty soon Matisse for it.

[quote]Or go to the Apple web site and watch the WWDC keynote where several iPhone applications were demoed.[/quote]

Saw every single one of them and haven't seen anything impressive. The 3D looks reasonable but not much better than JSR 184 (M3G) which we had for ages, since its a standard OpenGL ES 1.1 implementation thats hardly a big deal... Not even version 2.0 so no shaders or anything special...

[quote]Can you point to any applications on any other mobile platform that even come close?[/quote]

http://www.sumea.com/

http://www.superscape.com/

[quote]The iPhone SDK is a real platform, which comes much closer to developing a desktop applications than any other mobile platform currently available.[/quote]

It comes close to developing Mac applications which is a HUGE pain and requires a Mac (which sadly I own, its a terrible computer but I digress).

Its very easy to build an SDK for one platform with one phone that has one resolution and not too many features, push is apparently a modern concept for iPhone developers... The SDK is weighed down by limitations both in access and licensing making it the typical Apple encumbarence nightmare.

Java ME is far from a panacea, its got its huge list of problems both compared to Java SE and to the iPhone. But you can do with it pretty much every single thing you can do with the iPhone and more. You can even do with it most of the things you can do on Android.

So its not the best platform in terms of development ease, deployment, uniformity or quality... However unlike the iPhone, people actually have devices that really work with this.

Apple has had a history of being developer hostile, canceling support for API's and dumping platforms despite strong guarantees in the past to support them. Very strict unapologetic licensing, limitations and lawsuits. If you want to develop for these guys, then enjoy but there is no technical superiority in the iPhone when compared to Java ME.

Unleash the power of the grid

Jun 30, 2008 · Stacy Doss

[quote]Huh. I don't remember hearing Steve badmouth 3G. The first generation of the iPhone didn't support it for reasons of cost and battery-life, but the new generation does, so if 3G is important to you then this is no longer an issue. [/quote]

Steve lied about 3G and battery life/form factor dismissing it as unecessary compared to Edge... He very specifically said that it wasn't important. This is obviously BS since this phone: http://www.sonyericsson.com/cws/products/mobilephones/overview/w880i?cc=us&lc=en was available about a year before the iPhone and has 3G with video phone front camera not to mention the size of the old iPod nano...

[quote]Try laying out an interface using Interface Builder and writing your application using the APIs. [/quote]

Try LWUIT and pretty soon Matisse for it.

[quote]Or go to the Apple web site and watch the WWDC keynote where several iPhone applications were demoed.[/quote]

Saw every single one of them and haven't seen anything impressive. The 3D looks reasonable but not much better than JSR 184 (M3G) which we had for ages, since its a standard OpenGL ES 1.1 implementation thats hardly a big deal... Not even version 2.0 so no shaders or anything special...

[quote]Can you point to any applications on any other mobile platform that even come close?[/quote]

http://www.sumea.com/

http://www.superscape.com/

[quote]The iPhone SDK is a real platform, which comes much closer to developing a desktop applications than any other mobile platform currently available.[/quote]

It comes close to developing Mac applications which is a HUGE pain and requires a Mac (which sadly I own, its a terrible computer but I digress).

Its very easy to build an SDK for one platform with one phone that has one resolution and not too many features, push is apparently a modern concept for iPhone developers... The SDK is weighed down by limitations both in access and licensing making it the typical Apple encumbarence nightmare.

Java ME is far from a panacea, its got its huge list of problems both compared to Java SE and to the iPhone. But you can do with it pretty much every single thing you can do with the iPhone and more. You can even do with it most of the things you can do on Android.

So its not the best platform in terms of development ease, deployment, uniformity or quality... However unlike the iPhone, people actually have devices that really work with this.

Apple has had a history of being developer hostile, canceling support for API's and dumping platforms despite strong guarantees in the past to support them. Very strict unapologetic licensing, limitations and lawsuits. If you want to develop for these guys, then enjoy but there is no technical superiority in the iPhone when compared to Java ME.

Unleash the power of the grid

Jun 30, 2008 · Stacy Doss

[quote]Huh. I don't remember hearing Steve badmouth 3G. The first generation of the iPhone didn't support it for reasons of cost and battery-life, but the new generation does, so if 3G is important to you then this is no longer an issue. [/quote]

Steve lied about 3G and battery life/form factor dismissing it as unecessary compared to Edge... He very specifically said that it wasn't important. This is obviously BS since this phone: http://www.sonyericsson.com/cws/products/mobilephones/overview/w880i?cc=us&lc=en was available about a year before the iPhone and has 3G with video phone front camera not to mention the size of the old iPod nano...

[quote]Try laying out an interface using Interface Builder and writing your application using the APIs. [/quote]

Try LWUIT and pretty soon Matisse for it.

[quote]Or go to the Apple web site and watch the WWDC keynote where several iPhone applications were demoed.[/quote]

Saw every single one of them and haven't seen anything impressive. The 3D looks reasonable but not much better than JSR 184 (M3G) which we had for ages, since its a standard OpenGL ES 1.1 implementation thats hardly a big deal... Not even version 2.0 so no shaders or anything special...

[quote]Can you point to any applications on any other mobile platform that even come close?[/quote]

http://www.sumea.com/

http://www.superscape.com/

[quote]The iPhone SDK is a real platform, which comes much closer to developing a desktop applications than any other mobile platform currently available.[/quote]

It comes close to developing Mac applications which is a HUGE pain and requires a Mac (which sadly I own, its a terrible computer but I digress).

Its very easy to build an SDK for one platform with one phone that has one resolution and not too many features, push is apparently a modern concept for iPhone developers... The SDK is weighed down by limitations both in access and licensing making it the typical Apple encumbarence nightmare.

Java ME is far from a panacea, its got its huge list of problems both compared to Java SE and to the iPhone. But you can do with it pretty much every single thing you can do with the iPhone and more. You can even do with it most of the things you can do on Android.

So its not the best platform in terms of development ease, deployment, uniformity or quality... However unlike the iPhone, people actually have devices that really work with this.

Apple has had a history of being developer hostile, canceling support for API's and dumping platforms despite strong guarantees in the past to support them. Very strict unapologetic licensing, limitations and lawsuits. If you want to develop for these guys, then enjoy but there is no technical superiority in the iPhone when compared to Java ME.

Unleash the power of the grid

Jun 30, 2008 · Stacy Doss

[quote]Huh. I don't remember hearing Steve badmouth 3G. The first generation of the iPhone didn't support it for reasons of cost and battery-life, but the new generation does, so if 3G is important to you then this is no longer an issue. [/quote]

Steve lied about 3G and battery life/form factor dismissing it as unecessary compared to Edge... He very specifically said that it wasn't important. This is obviously BS since this phone: http://www.sonyericsson.com/cws/products/mobilephones/overview/w880i?cc=us&lc=en was available about a year before the iPhone and has 3G with video phone front camera not to mention the size of the old iPod nano...

[quote]Try laying out an interface using Interface Builder and writing your application using the APIs. [/quote]

Try LWUIT and pretty soon Matisse for it.

[quote]Or go to the Apple web site and watch the WWDC keynote where several iPhone applications were demoed.[/quote]

Saw every single one of them and haven't seen anything impressive. The 3D looks reasonable but not much better than JSR 184 (M3G) which we had for ages, since its a standard OpenGL ES 1.1 implementation thats hardly a big deal... Not even version 2.0 so no shaders or anything special...

[quote]Can you point to any applications on any other mobile platform that even come close?[/quote]

http://www.sumea.com/

http://www.superscape.com/

[quote]The iPhone SDK is a real platform, which comes much closer to developing a desktop applications than any other mobile platform currently available.[/quote]

It comes close to developing Mac applications which is a HUGE pain and requires a Mac (which sadly I own, its a terrible computer but I digress).

Its very easy to build an SDK for one platform with one phone that has one resolution and not too many features, push is apparently a modern concept for iPhone developers... The SDK is weighed down by limitations both in access and licensing making it the typical Apple encumbarence nightmare.

Java ME is far from a panacea, its got its huge list of problems both compared to Java SE and to the iPhone. But you can do with it pretty much every single thing you can do with the iPhone and more. You can even do with it most of the things you can do on Android.

So its not the best platform in terms of development ease, deployment, uniformity or quality... However unlike the iPhone, people actually have devices that really work with this.

Apple has had a history of being developer hostile, canceling support for API's and dumping platforms despite strong guarantees in the past to support them. Very strict unapologetic licensing, limitations and lawsuits. If you want to develop for these guys, then enjoy but there is no technical superiority in the iPhone when compared to Java ME.

Unleash the power of the grid

Jun 30, 2008 · Stacy Doss

[quote]Huh. I don't remember hearing Steve badmouth 3G. The first generation of the iPhone didn't support it for reasons of cost and battery-life, but the new generation does, so if 3G is important to you then this is no longer an issue. [/quote]

Steve lied about 3G and battery life/form factor dismissing it as unecessary compared to Edge... He very specifically said that it wasn't important. This is obviously BS since this phone: http://www.sonyericsson.com/cws/products/mobilephones/overview/w880i?cc=us&lc=en was available about a year before the iPhone and has 3G with video phone front camera not to mention the size of the old iPod nano...

[quote]Try laying out an interface using Interface Builder and writing your application using the APIs. [/quote]

Try LWUIT and pretty soon Matisse for it.

[quote]Or go to the Apple web site and watch the WWDC keynote where several iPhone applications were demoed.[/quote]

Saw every single one of them and haven't seen anything impressive. The 3D looks reasonable but not much better than JSR 184 (M3G) which we had for ages, since its a standard OpenGL ES 1.1 implementation thats hardly a big deal... Not even version 2.0 so no shaders or anything special...

[quote]Can you point to any applications on any other mobile platform that even come close?[/quote]

http://www.sumea.com/

http://www.superscape.com/

[quote]The iPhone SDK is a real platform, which comes much closer to developing a desktop applications than any other mobile platform currently available.[/quote]

It comes close to developing Mac applications which is a HUGE pain and requires a Mac (which sadly I own, its a terrible computer but I digress).

Its very easy to build an SDK for one platform with one phone that has one resolution and not too many features, push is apparently a modern concept for iPhone developers... The SDK is weighed down by limitations both in access and licensing making it the typical Apple encumbarence nightmare.

Java ME is far from a panacea, its got its huge list of problems both compared to Java SE and to the iPhone. But you can do with it pretty much every single thing you can do with the iPhone and more. You can even do with it most of the things you can do on Android.

So its not the best platform in terms of development ease, deployment, uniformity or quality... However unlike the iPhone, people actually have devices that really work with this.

Apple has had a history of being developer hostile, canceling support for API's and dumping platforms despite strong guarantees in the past to support them. Very strict unapologetic licensing, limitations and lawsuits. If you want to develop for these guys, then enjoy but there is no technical superiority in the iPhone when compared to Java ME.

Unleash the power of the grid

Jun 30, 2008 · Stacy Doss

Its amazing to see an iPhone fanboy calling something obsolete... You guys are still stuck in 2G and you are calling everyone else obsolete ;-)

The funniest thing is how Steve himself derided the slow speed of the existing iPhone now that they have "finally" built a 3G device barely a year after badmouthing 3G. Can you point at a single iPhone SDK feature that is missing from MSA/Java ME?

Web Analytics: The Results of Tabbed Browsing

Apr 29, 2008 · admin

No mobility option?

Our session (TS-4921) will appeal to most cell developers and to Swing developers alike. Not objective here but I think this session will make huge waves, I can't talk much further about this though so you will have to be there ;-)

User has been successfully modified

Failed to modify user

ABOUT US

  • About DZone
  • Send feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends: