Get 'em before they get You

A passionate programmer
May. 11, 2010
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
Get 'em before they get You
1 of 19

More Related Content

Similar to Get 'em before they get You

Modern C++Modern C++
Modern C++Richard Thomson
Rapidly Building Data Driven Web Pages with Dynamic ADO.NETRapidly Building Data Driven Web Pages with Dynamic ADO.NET
Rapidly Building Data Driven Web Pages with Dynamic ADO.NETgoodfriday
Reflections on teaching JetBrains MPS within a university courseReflections on teaching JetBrains MPS within a university course
Reflections on teaching JetBrains MPS within a university courseMikhail Barash
WDIM268 Week 2 (Summer 2010)WDIM268 Week 2 (Summer 2010)
WDIM268 Week 2 (Summer 2010)Tyler Sticka
XSS Defence with @manicode and @eoinkearyXSS Defence with @manicode and @eoinkeary
XSS Defence with @manicode and @eoinkearyEoin Keary
Apache Eagle: Architecture Evolvement and New FeaturesApache Eagle: Architecture Evolvement and New Features
Apache Eagle: Architecture Evolvement and New FeaturesHao Chen

Recently uploaded

Elevate Your Enterprise with FME 23.1Elevate Your Enterprise with FME 23.1
Elevate Your Enterprise with FME 23.1Safe Software
Safe Community Call #12.pdfSafe Community Call #12.pdf
Safe Community Call #12.pdfLornyPfeifer
Cloud Composer workshop at Airflow Summit 2023.pdfCloud Composer workshop at Airflow Summit 2023.pdf
Cloud Composer workshop at Airflow Summit 2023.pdfLeah Cole
Advancing Equity and Inclusion for Deaf Students in Higher EducationAdvancing Equity and Inclusion for Deaf Students in Higher Education
Advancing Equity and Inclusion for Deaf Students in Higher Education3Play Media
GIT AND GITHUB (1).pptxGIT AND GITHUB (1).pptx
GIT AND GITHUB (1).pptxGDSCCVRGUPoweredbyGo
Netwitness RT - Don’t scratch that patch.pptxNetwitness RT - Don’t scratch that patch.pptx
Netwitness RT - Don’t scratch that patch.pptxStefano Maccaglia

Get 'em before they get You

Editor's Notes

  1. We all make stupid mistakes
  2. On demand - IDE, cmd, CI
  3. class Example { void bar() { while (baz) buz.doSomething(); } }
  4. On demand - IDE, cmd, CI
  5. For questions on why we charge money Because your get what you play for - added productivity, ease of use and a more intelligent environment. What we’re trying to do is bring Java developers some extra value. Unlike our competitors we’re not trying to a) bring people to the Java platform for long-term profit or b) make money off tools like MyEclipse or WSAD consultancy. If it’s only the price tag that holds you back, you’ve got options. If you need IDEA for an open source project or educational purposes, then you can use IDEA for free. And if you’re writing software for a living and charging money for your work, then that extra value I’ve just talked about means a lot to you, for the cost of 2 - 3 tanks of petrol. Our innovation has driven the IDEs for the past 9 years, many other IDEs use the functionality that we pioneered and they’re still chasing things as our refactorings and our editor, as well as other things. The cash that our fans have given to us over the years we’ve used to drive productivity. And since we have a high percentage of people who upgrade each year that productivity bonus is obviously worth it. Thanks to this policy we can keep our exceptional innovation pace and ensure that you always may develop with pleasure. For the money you may be productive right now. Judge yourself how many of the features I’ve shown today and in what quality you can find in your IDE. It would take quite some time, so let’s discuss that at the beer party. Developers should use the IDE they feel most comfortable with. Some of our customers claim that IDEA pays for itself within three weeks. Why should they participate in the EAP First it’s you who benefits. You get the features you want, you get them smoothly integrated into the rest. Second, it is the community that benefits from the feature being available. And we will make sure, it’s not implemented as a solitaire feature, but smoothly integrated with the rest of the IDE. I am not sure about the other IDEs, how easy it is to get some core functionality changed. If you do, let’s talk about it after the presentation and compare it with the feedback mechanism we have for IDEA. I’d be interested in such a comparison. Others are trying to copy us. That’s a good sign that we are ahead of the crowd. It gives us an indication that we are doing the right thing, we provide functionality that the developers want. We are not afraid as we are certainly not standing still, we are a moving target, a quickly moving one. Your tool is bloated with unneeded functionality We don’t add functionality because we need to sell some hardware or software and need support for it in the IDE , we develop IDEA based what the developers ask for. Each IDEA version starts with intense on-line brainstorming with the customers about what they want to be supported in the next version. And the functionality is gradually tuned in the EAP. Our future success depends on our ability to provide functionality that the developers need. I believe that such a short feedback helps us innovate faster. Developers ask for them, we can't ignore Maven, Spring or Hibernate. We’re expanding productivity to other domains. You don't need to upgrade, or you can disable the unwanted plugins. Why don’t we make IDEA a set of plugins for another platform Most of the cross-technology support you’ve just seen in my demos is done in the core. The way plugins cooperate makes a real difference. You always have to make a trade off between general-purpose architecture and effectiveness. This is not only valid for IDEs. We are on the effectiveness side. We would loose control over the core. And it is the core that makes the biggest difference. We need to be able to modify the core to smoothly integrate all the pieces together, propagate changes across technology boundaries, reuse key shortcuts, use consistent views and provide new refactorings. Why don’t you standardize on a plugin mechanism, like OSGi There’s currently no real demand for it among our users and we really take seriously what they want. We need to focus on other functionality that they need, like Seam, Flex, Scala, JavaScript debugger and a lot of others. Once OSGi becomes important for them, I’m sure we’ll add it. What are you planning for the next version Flex debugger and other improvements Freemarker Java EE6 Spring 2.5, Spring WebFlow Struts 2 GWT update JavaScript debugger Seam support Ruby IDE Web IDE – Python, PHP Performance needs improvement Do you have a specific problem, maybe our technical support could resolve the issue, in general we don’t think IDEA is performing badly, disable some plugins to save memory and speed-up startup, use multi-core processor to leverage the new multithreaded core Why don’t we open source IDEA Do you frequently read or modify sources of your tools? If so, you are more an exception than a rule. There are not many developers, who deliberately modify their own tool and I certainly respect that. Those are usually the most innovative and forward thinking among programmers and they have my respect. We consider the sources as part of our know-how and keep them internal. However, we offer EAP to put customer-driver innovation into IDEA and we’ve open sourced considerable parts of IDEA to help developers develop plugins. Why is our off-line documentation so weak IDEA is evolving so quickly that documentation sometimes lags behind a bit. However, the documentation can only provide a general guide, but most problems developers face are very specific ones. That’s why all IDEA users can use our on-line technical support and the EAP community forum to get answers to their specific problems. We also gradually improve the on-line documentation, demos and tutorials. And people like it. Subscription licensing Currently our customers are happy with the licensing scheme that we have. However, if the preferences of our customers change at some point, we’ll listen to them and we may start offering other options, as well. We were considering the subscription licensing some time ago, but customers didn’t really want that at that time. What’s your attitude to open source Open source is a very useful phenomenon, which gives us great tools and frameworks, like Tomcat, Hibernate, Spring or others and allows developers to easily cooperate and customers to avoid a provider lock-in. So we support open source projects with free licenses and we’ve opensourced parts of IDEA under Apache 2 license for others to see our code, get inspiration for writing their own plugins and possibly enhance IDEA? There are a number of IDE's on the market. Users like choice and don't like monopolies. Where do you think the differentiation should be? (Features is only one aspect, please consider also quality, support, target users, etc.) Of course differentiation takes place according to the features of an IDE, but as we've been learning over the years, a feature list is just the surface - and often it's not very valuable at helping to differentiate, especially when you have good competitors. I can't speak for the other companies here, but where JetBrains really tries to stand out is with the DEPTH and INTELLIGENCE of the features that we provide. For example <fill example here>. This level of quality is really important for developers who aim to make themselves more productive. We aim to build a tool that understands what you plan to do, before you do it, so that your projects are more fun, and are completed quicker -- and the challenges that you face as a developer aren't caused by your IDE. Of course, we also believe that a company should be there to support its customers, so we provide 24/7 technical support, and our development team is highly interactive in our help forums and Early Access Program. Where do you get your ideas for new features and enhancements? How much do you listen to your users and how much are you innovators? We're highly innovative -- with a specific goal in mind: developer productivity. We look to industry trends, community involvement, and a handful of visionaries for ideas to build into IntelliJ IDEA. Our users are important to us, and we listen intently to what the people in our Early Access Program have to say -- the community definitely helps to guide our development. That’s a really good question. Oh, I’m glad you asked. The answer would be rally long I’m not working on that problem That’s a good use case to try our technical support Oh, that’s really deep Interesting questions for beer discussion: <Is anyone here working in such a mixed IDE environment? How many of you are restricted by the employer or the customer in which IDE they may use? How did they like the pre-prepared demo?> New core features # "Extract method object" refactoring # Type migration refactoring # "Create Test" and "Go to Test" actions - Control + Shift + T # "Unwrap statement" action – Control + Shift + Delete # Global data flow navigation (Analyze | Dataflow to this) # "Generate toString()" plugin bundled # New code coverage runner # Second smart completion (press Ctrl-Shift-Space twice to get more context-sensitive completion suggestions) # IntelliLang plugin bundled (@Language annotation, regular expression syntax validation etc.) # Per-file encoding support Greater Performance JBoss Seam Javascript/Flex Debugger Struts 2 Spring 2.5 Multi-Dialect SQL Console Out-of-the-Box Language Injection FreeMarker, Velocity and GWT 1.5 REST WebServices Miscellaneous Improvements Revert Changes intention action Highlighting of implicit parameters for anonymous classes Show Applied Styles tool window Bundled GuiceyIDEA plugin for Guice support Team Foundation Server integration New Java refactorings from former Refactor-J Improved Groovy support, with Grails 1.0.3 and new refactorings Improved Ruby support, with Ruby debugger Scala support Python support Flexible settings storage with IntelliJ IDEA Server