November 25, 2015, , , , , , ,

Komodo Webinar Questions

Some of you might have heard that Nathan and I took time out of our dev schedules to do an *Intro to Komodo* webinar on the 19th of November, 2015. What you may not know is that everyone asked a TON of questions! We couldn’t possibly answer all of them in the time that we had, so we took all the questions asked and I answered them here.

First here’s the webinar…

…and now all the answers!

Tweet at me ([@th3coop](https://twitter.com/th3coop)) which one you think is my favourite question. If you get it I will totally high-five you. So here they are…

  1. What does “Mozilla codebase” mean?Mozilla is an application framework that allows developers to create desktop applications. They can be cross platform, come with built in libraries, and build user interface (UI) using XUL (HTML for your desktop). Mozilla is what Firefox is built on. This means that some addons that are compatible with Firefox can be ported to Komodo with a few small changes. Mozilla also allows users to build and manipulate the UI using CSS, Javascript, and, in our case, Python.
  2. How can I change the colors in the side and bottom panels?Because Komodo uses web technologies like Javascript and CSS, you can easily change ANY aspect of the UI by adding your own custom CSS rules. We recommend using the Stylish Addon (ported from Firefox) to implement your custom styles. To investigate the Komodo UI structure we recommend the DOM-Inspector addon and Element Inspector (must have DOM-Inspector already installed). You can easily install all of these tools through Commando ((ctrl [command] + shift + O) > Package scope). Additionally if you don’t mind being on the bleeding edge, you could try the Tabula Rasa skin which allows you to set your own colors.
  3. Can I add namespaces to my file through commando?Not yet, but we’re tracking that request on github.
  4. Is Carey prepared?Carey, for once, was totally prepared!
  5. Where is the Commando Documentation? I don’t understand how it works.You can find the Commando Documentation here.
  6. How can I extend Komodo so that I can display the code structure in the ‘#’ tab for another language (for example, Fortran)?For that you would need to write your own Code Intelligence addon for the language you choose – essentially teaching Komodo how to interpret code at a high level. For example see Komodo-Go. Alternatively, you could extend New Source Tree, which uses regex to scan a file.
  7. Could you set a Userscript to auto run/prompt?Yes, definitely. You can set a Userscript to run on many different events in Komodo. You can customize this under the Userscripts properties dialog that you can reach by right clicking the Userscript > Properties > Trigger tab. For more details see our Komodo Macros and Userscripts documentation.
  8. Could I adapt Komodo to use as an interactive debugger with a compiled language (C++/Fortran) and gdb? For example, as is done in emacs.It is possible **but** it is not something that is easily answered and takes quite a bit of Komodo and GDB knowledge to accomplish. It can also be challenging because usable resources are limited, since this is based on IDE which is closed source. However, the code is all there in IDE and you could theoretically reverse engineer it. We are always available on the forums if you need help.
  9. You mentioned the skin and theme (tabula rusa) color customization may appear in a future version of Komodo. What else can we expect to see?You can expect us to push the envelope, break the mold, give it 110%, go the extra mile, and, of course, be all that we can be. For more details, watch our forums, read our tweets, and stay tuned for our newsletters to keep on top of what’s in the works. As we continue to develop future Komodo builds, you can also expect to find beta releases available for testing.
  10. Can Komodo debug Node.js ?Yes, Komodo’s supports Node debugging for all current stable Node versions. *(The current being 5.1.0 as of this text being written. For those of you reading this in the future and using later NodeJS builds, how did the Canucks do this year? You don’t care? Ya me neither.)*
  11. It is well known that you are very awesome. How did you get to be so awesome?This was one of the best questions asked in my personal (awesome) opinion. To answer your awesome question Sean, I will quote the great Bruce Lee:“Empty your mind, be formless. Shapeless, like water. If you put water into a cup, it becomes the cup. You put water into a bottle and it becomes the bottle. You put it in a teapot, it becomes the teapot. Now, water can flow or it can crash. Be water, my friend.”So basically, make sure you drink lots of water so that you’re well hydrated. Also yoga classes will probably help you to stay limber to fit into a wide variety of shaped bowls and other containers.
  12. Does IDE work with Visual Basic?No…no no no no no…No. Well kinda. You can get support for basically any language using Project menu > New from template > New Komodo Language.
  13. Do you have something to generate getters and setters for class variables in different languages?This is what the conditional snippets were meant for. Using EJS inside Komodo snippets you can generate any construct you like. Refer to the Python ninit snippet in the sample abbreviations folder that comes with the Komodo install.
  14. Is the source control interface command-based or is a compiled library required? In other words, if I want to customize for another SCM (such as Fossil) is it possible?The easiest way to do this would be through the Commando Shell scope. You would need to look at existing examples in the Komodo source to get started but that tool is implemented to be extensible.
  15. Do I need to be connected to the Internet to use Komodo?Only if you’re using tools that need to be connected to the Internet such as Collaboration, Source Code Control, or remote folders.
  16. Do you work from home full-time?Since 74% of ActiveState is in Vancouver, BC, Canada, the main office is there. Since 66.6666667% of the dev team lives 83% of the width of North America away from Vancouver, they work from home 90% of the time. According to Google it would take 27% of a week to drive, which is a brutal commute. I occasionally work from home but I’m lucky enough to live in Vancouver, about 33.3333333% of an hour from the office.
  17. Do I need a different license for each of my computers?NOPE! Unlike BC car insurance, Komodo licenses are on the user and not the hardware. So you can install your license and Komodo on all the dev machines you have.
  18. How do you handle being cross-platform, is the software Java-based?NO…no no no no no no no no no…My god no. As I mentioned before, Komodo is based on Mozilla which can be compiled for a variety of platforms. This allows us to create builds for Linux (many different flavours), OSX, and Windows, relatively easily. Komodo proprietary and open sourced code is Python and Javascript which also means no platform lock-in.
  19. What are your favourite community-provided packages?My favourite is Element Inspector, which I’m certain was ported over by our very active community member Defman. I use it almost daily.I’m sure Nathan’s fav is Stylish since he’s got so much *STYLE*. Seriously though, if you like the look and feel of Komodo lately, you can thank Nathan for that. He’s done a TON of work to make the Komodo skin easier to customize, look more modern, and be more pleasant to use.
  20. What functionality do you have for Node.js?NodeJS is a first class language in Komodo. All the major IDE tools work with Node including, but not limited to, debugging, code intelligence, syntax checking, and code browsing.
  21. What is the difference between Komodo Edit and IDE?You can see a complete comparison between Komodo Edit and Komodo IDE on our website. Komodo Edit is a very robust text editor and Komodo IDE is, well, a full blown IDE.
  22. How does this work with Docker?Komodo IDE provides an interface through the Commando Shell scope. This interface provide contextual command help, command listing, intelligent command arguments, and completions for partial strings that match a possible next command.
  23. What are the advantages to using Komodo rather than us all using different programs?
    • Easily extended using dynamic languages and web technologies
    • Great community for support and learning
    • One IDE all your projects and languages
    • No external language or tool dependencies before you can install
    • Cross platform with native look and feel
    • Great out of the box experience
    • Auto configuration
    • No addons installation just to get core tools and feature
    • Super awesome development team
  24. You both look beautiful by the way. (context: the attendees could see the slides AND our webcams) This is not a question… but I’ll allow it.

Title photo courtesy Gerd Altmann on Pexels.

Carey Hoffman

Carey Hoffman

Carey made the logical switch from snowboard instructing and treeplanting to the technology industry in 2009, taking database and network administration at Vancouver BC's BCIT college. Having started out on the technical support and QA team for ActiveState he now works on the Komodo development team as a front and backend software engineer.