1 2 Previous Next 24 Replies Latest reply on Nov 6, 2015 10:03 AM by Pavel_p Go to original post
      • 15. Re: APEX 5 charting (and plugins in general)
        Para

        I guess I have a bad way with words.

         

        I'm okay with oracle incorporating things that they have under control , and I would even stretch it to the point where I'm okay with them using 3rd party libraries that are WELL established and are proven to be useful over the course of years. jQuery certainly fits in that category.

         

        I'm would not be okay with them bandwagoning new/untested 3rd party frameworks because hivemind of web dev wants to stay on the cutting edge all the time.

        Reason being apex devs don't get to be on the latest version of apex in most cases, and when you finally switch you might get a product that has stuff in it that was dropped years ago for not fitting web standards ( or whatever ).

        • 16. Re: APEX 5 charting (and plugins in general)
          Pavel_p

          Hi Tom,

          thanks for your explanation. In your post you mentioned at least ten technologies/frameworks including JS and this is exactly what I hate on the whole webdev mess. Too many "great" technologies that were probably meant to make life easier but could not have been developed at all if webapps were not misused for business applications. Yes, I know, it's a quite rude summary and definitely I'm biased against web applications (and especially JS) but this is just my opinion. I can't help myself but desktop development 15+ years ago with for example VB/Delphi was more productive, way simpler and stable than with current web technologies. I completely agree with your point that "lots of the issues stem from a lack of knowledge or understanding of javascript for many developers out there" including myself, though I'm at least perfectly aware of that and the less JS code I write, the better and less buggy my apps will be (luckily APEX is high level enough that the need of JS adoption is very little...I mean for common tasks it's possible to stay just with it's JS API). But on the other hand, how can I take seriously into account a language, where even simple rounding is a problem (Round to at most 2 decimal places in JavaScript - Stack Overflow) for serious things like validation and everytimes I tried to write some very simple calculation in JS, it ended like this. Another thing is that I want to expose as little code/logic as possible to public (including validation) that even if JS validation perfectly worked, which I don't believe ever will except of some basic things like mail address validation, I'm not interested in it at all. There are hords of (probably very good) developers that are trying to make something more usable out of JS for business use (like TypeScript, Dart...whatever). I don't claim that JS is bad - it's just for people with different mindset than I have.

          Regards,

          Pavel

          • 17. Re: APEX 5 charting (and plugins in general)
            Patrick Wolf-Oracle

            Hi,

             

            because Oracle Open World is done and Oracle JET (http:///www.oraclejet.org/) has finally been announced, we are now able to provide some more information about our new charting engine in 5.1.

             

            As some of you have already guessed, we plan to use the DVT (Data Visualization) components of Oracle JET for our new charting engine. Have a look at Oracle JET - Data Visualizations to find out how they look and what's possible. Those charts do provide many configuration options and we do think that they have a similar feature set as AnyChart, but provide much better accessibility and responsive design support. In addition DVT contains a few chart types (for example Polar and Funnel) we haven't supported in APEX but which we plan to integrate in APEX 5.1.


            It's not our intention to expose all those options as declarative attributes in Page Designer, because it would make charting for most developers way to complicated. But experienced developers will be able to specify a JavaScript function for each chart region to customize settings. It is is called during initialization and data loading and allows to manipulate the JavaScript object which is used to initialized the chart widget. See API documentation at http://www.oracle.com/webfolder/technetwork/jet/jsdocs/oj.ojChart.html to find out all possible settings supported by the DVT charts.


            We think this will provide even better customizability than the Custom XML attribute of our AnyChart charts, because developers can stay declarative for most parts and just add the necessary advanced options with some simple JavaScript assignments.


            We also do plan to enhance the existing Application Upgrade Wizard to migrate existing AnyChart chart regions to the new chart region type. Obviously this is not possible for charts with Custom XML. They will be handled the same as with the migration between AnyChart 3 and 5. All the declarative settings are migrated and the Custom XML will be put into the comment text.


            I hope this provides some more information about our future direction for the new charting engine in APEX 5.1. #SafeHarbor: With all that said, our plans might change before APEX 5.1 gets released.


            Regards

            Patrick

            • 18. Re: APEX 5 charting (and plugins in general)
              Pavel_p

              Hi Patrick,

              thaks a lot for making things as clear as possible. "We also do plan to enhance the existing Application Upgrade Wizard to migrate existing AnyChart chart regions to the new chart region type" - this is exactly what I was asking for. So the conclusion for me is to use AnyChart engine and patiently wait for APEX 5.1 with it's new cool and highly anticipated features.

              Regards,

              Pavel

              • 19. Re: APEX 5 charting (and plugins in general)
                TexasApexDeveloper

                Pavel,

                  Just to be honest.. If you do NOT like the fact that APEX uses JavaScript as one of the major portions of the product, I would seriously look at moving to a different development product.  I used to be a desktop application developer (Started with Dbase III+ and ended with MS Visual Foxpro).. I have accepted that as a software developer I needed to adapt to the changing development environment(The web, web browser ).  What exactly is it about JavaScript that seems to bother you??

                 

                Thank you,

                 

                Tony Miller
                Los Alamos, NM

                • 20. Re: APEX 5 charting (and plugins in general)
                  Pavel_p

                  Hi Tony,

                  in fact, I don't care too much if APEX itself uses JS or anything else under the hood (and I didn't say anything like I don't like it), what matters is what it offers to me. And since version 4 it offers more than a lot without the need of writing a single line of JS code and if I really have to, there is a nice JS API available which is a threshold where I want to go in JS world (and tbh, lot of devs should do the same as I've already seen a lot of buggy JS code and the world would be a nicer place for living if it was not written at all). So, analogically as I can use my car without the deep knowledge of it's ECU programming, as I can use my OS even if I know nothing at all about low level programming, fortunately I can use APEX without deep knowledge of JS using only it's declarative features (which is actually in most cases the recommended way by the highest APEX authorities) and that's one of the reasons why I love it. Others are that you have all the power of PL/SQL, Oracle DB and all you need to have is a browser and internet connection. If you suggested to move to any other development environment, show me anything else where you can simply reproduce (if possible) your problem and have a good chance that someone from the community will try to solve it, cause the rest of the world can immediately access your development environment. I think that APEX is absolutely unique in this regard.

                  But to be absolutely honest, last time I tried to change my developmet environment cause I wanted to get rid of that whole HTML+CSS+JS+jQuery+bunchofothertechnologies mess was about the worst decision I've made in my professional life. I bought MS LightSwitch as it looked really promissing and if something is a RAD tool, then definitely LS. I was able to do things in minutes that took hours in APEX..well on the other hand some more complicated things that took still hours in APEX, took days or were almost impossible in LS, so the final result was almost on par. But dealing just with C#/VB.net+XAML was something like a programmers heaven compared to anything I've seen in the web development. Anyway, nowardays is SilverLight together with LS (as LS was based on it) more than dead and I'm yet to port 2 of my apps back to APEX (and then I'll be finally able to get rid of all MS products, run away and never look back...and trust me, I'm really looking forward to that moment).

                  So what I want is a well established IDE with reasonably clear future, statement of direction and APEX perfectly suits such needs (no matter if it uses JS or not) as I don't get paid for jumping from one technology to another and porting my apps back and forth. No matter if I like it or not, current world wants webapps and I'm not going to go against the trends (my original formulation was considered as a spam). If my employer/customers want me to write webapps and willing to pay for it, no matter that a good desktop app would usually do the same better, faster and more comfortably (I'm talking about internal apps used by department, company...not used by the whole world), I'll do my best and provide them with webapps - easy like that. Last time I suggested that for some task would be faster, cheaper, easier and more user friendly to write a desktop app, the director's response was "yep, maybe, but it would be a huge step back". I don't understand the current trend that anything and everything must be resizable and run on a myriad of devices (even if I haven't seen an accountant typing tons of digits on a smartphone) but such is life and I don't have to necessarily understand everything.

                  And what exactly bothers me about JavaScript... As I mentioned before, I somehow don't like anything that cannot be compiled, doesn't have strongly typed variables (and if this particular point was not considered as a weakness by more people, there weren't attempts to make things like TypeScript) and doesn't honestly and politely crash if en exception occurs, instead silently does nothing (which is actually a better option) or does something completely unpredictable if you call a function with "6" instead of 6 (for example), this is what drives me crazy about JS.

                  Thats all.

                  Regards,

                  Pavel

                  • 21. Re: APEX 5 charting (and plugins in general)
                    Scott Wesley

                    From someone who'se about to release a book about using jQuery in APEX, so apparently considered an authority on the matter, I have a few more observations.

                    (and I didn't say anything like I don't like it)

                     

                    Exhibit A

                    including JS and this is exactly what I hate on the whole webdev mess

                     

                    and B & C from later in the same diatribe.

                    and the world would be a nicer place for living if it was not written at all

                    (I've thought the same about some PL/SQL I've seen some people write)

                    I somehow don't like anything that cannot be compiled

                     

                    This sounds like the ravings of someone who just needs more awareness of it's capabilities and limitations. APEX a development tool that uses the amazeballs of PL/SQL in an environment that relies on HTML and JavaScript, hence the reason dynamic actions where invented to help bridge the gap.

                     

                    This is the best thing you said

                    If you suggested to move to any other development environment, show me anything else where you can simply reproduce (if possible) your problem and have a good chance that someone from the community will try to solve it, cause the rest of the world can immediately access your development environment. I think that APEX is absolutely unique in this regard.

                    But to deliver this relies on the very language you appear to despise.

                     

                    I think you've also got to consider the right tool for the job. Desktop apps are great, but I currently work in an office where a subset of employees work in the field and use tablets to interact with the database, capturing data. You want me to tell them they've got to keep it all in their head until they come back to the office? We've kept things simpler by giving them a specific device, but other companies might like the employees to bring their own device. Simple, common, real world scenario.

                     

                    What you're saying in the last few (seemingly contradictory?) paragraphs could just as well come from someone still stuck in the Forms era, citing that Forms is the best technology ever and we should all just deploy Forms.

                     

                    Instead you're working with a mature IDE that is adapting and responding to how the world is shaping around technologies available today. You're limiting yourself and your applications by ignoring their capability to extend such an extensible product like APEX.

                    • 22. Re: APEX 5 charting (and plugins in general)
                      Pavel_p

                      Hi Scott,

                      there is either a language barrier, which is quite possible as English is obviously not my first language or (non-exclusive OR, to be precise) you just didn't read carefully enough what I wrote, took out of context some of my previous statements and reacted to something else than I wrote. So to make (hopefully) things clearer...

                      I wrote "I don't care too much if APEX itself uses JS or anything else under the hood" and the quoted part "(and I didn't say anything like I don't like it)" was related to the fact that APEX uses JavaScript as one of the major portions of the product (not JS itself). Luckily there are smart guys in Oracle that carefully put together all those technologies and crafted a great tool I can work with (and actually produce something that works and users like it) without the need of learning all the JS secrets. Actually you're saying quite the same in other words in your sentence "hence the reason dynamic actions where invented to help bridge the gap". And I also completely agree with your statement that "I've thought the same about some PL/SQL I've seen some people write" as it's not related only to JS code. Take for instance code in this thread My error is "ORA-06502: PL/SQL: numeric or value error: character to number conversion error". It could be a good starting point for an article "How NOT to write code in PL/SQL" (and it's not meant as a "diatribe" against the OP as I gave some time to find it's origins). And again we're more than lucky at this puncture as the recommended approach how to write code in APEX is not to write it at all and use it's declarative features instead.

                      So, no matter if we call web development a mess or fast evolving technologies stack and if you mind the word "mess", take it as a citation of one of the highest authorities - Ian Hickson Interview with Ian Hickson, HTML editor | HTML5 Doctor. You said "diatribe"...well, I don't feel it this way, from my point of view it's just an appropriate word for a situation when every browser has a quite different idea how to interpret the same code (and for the same reason I prefer the code that can be compiled).

                      What exactly is seemingly contradictory in my last few paragraphs? Did I claim anything like "one or other technology is the best for everything"? I don't think so, I just said "for some task would be faster, cheaper, easier and more user friendly to write a desktop app" which is in fact exactly the same like yours "I think you've also got to consider the right tool for the job". My particular (also realworld) scenario was: process some text files=>load them into tables=>edit/transform data=>extract=>compress=>upload elswhere (with all the comfort that desktop apps offer, I mean Fn keyboard shortcuts, context menus and so on). This app was supposed to be used by a department where all the users had W7, monitors with the same resolution etc... So what I'm saying is not that there is not a realworld scenario to use webapps (and your example was a common one), just that there are situations when a desktop app would be more suitable and webapps are often misused for everything because of current trends.

                      "Instead you're working with a mature IDE that is adapting and responding to how the world is shaping around technologies available today." - Yes and I'm happy for that.

                      "You're limiting yourself and your applications by ignoring their capability to extend such an extensible product like APEX." - again completely agreed. This is because I don't lack self-censorship and I deeply believe that my apps will be better if I'll keep doing it this way. And from what I've seen so far, lot of other devs would rather do it exactly the same way. Of course there are highly educated and capable guys that can handle JS properly (and I really admire such abilities) but it's more an exception than the rule in line-of-business apps.

                      Regards,

                      Pavel

                      • 23. Re: APEX 5 charting (and plugins in general)
                        joelkallman-Oracle

                        Friends,

                         

                        If I may just briefly poke my head into this rather robust discussion, please.

                         

                        Just on the topic of Oracle JET, as I mentioned to the JET team earlier this week, I think it's a brilliant solution.  I talked with numerous customers and managers at Oracle OpenWorld who would prefer a modern framework from someone (like Oracle) that isn't going to change every 6 months, and be in it for the long term.

                         

                        With respect to data visualization, we've been in discussions with the JET team for a long time, and when they were going to be ready, we were going to be ready.  Make no mistake - we believe the charting solution we get from the Data Visualization Tools from Oracle JET are the best on the market.  We are adopting these in Application Express because we believe it is the best way forward for our customers, especially from a visual and functional standpoint.  Also, you might have heard of this thing called Oracle Cloud.  It is a broad platform of services.  Application Express is available in the Oracle Cloud with a number of these services.  As customers use APEX to extend these services and Fusion Applications, you would want the user experience of these extensions to be consistent.  And with a consistent data visualization experience, we can help achieve that goal.

                         

                        But I'm surprised that no one has raised the scenario if Application Express did not include the data visualization tools in JET.  The argument from the classic naysayer would be something like "All Oracle Cloud solutions use JET.  All Oracle products use JET.  The visualizations in all of these products are beautiful.  And Oracle Application Express is different, yet again.  See? They can't be considered seriously."  For the architect or manager looking for any angle against APEX, you know this would be the line of argument.

                         

                        AnyChart is not dead in APEX.  We will continue to bundle the AnyChart software with APEX, and we may eventually bundle in the latest AnyChart distribution to adopt some of their charts (especially Gantt).

                         

                        Joel

                        1 person found this helpful
                        • 24. Re: APEX 5 charting (and plugins in general)
                          Pavel_p

                          Hello Joel,

                          thanks a lot for further clarification. I'm really looking forward to 5.1 as it's new charting engine together with the new interactive grid sounds...ummm just amazing (too good to be true, tbh).

                          And maybe noone has raised such argument just because JET was just recently revealed and noone (including classic naysayers) already knows that All Oracle Cloud soulutions + other technologies use JET.

                          Best regards,

                          Pavel

                          1 2 Previous Next