Page 2 of 3 FirstFirst 123 LastLast
Results 11 to 20 of 25

Thread: Windows frontends suck

  1. #11
    Variable Bitrate NeonDev's Avatar
    Join Date
    Feb 2008
    Posts
    431
    I may as well chime in and say its not always that people are unsatisfied with what is out there; it can be because they simply want to do it themselves even if their offering doesn't do a whole lot different.

    I can say that developing my own mac front end has increased my programming knowledge and skill more than 10 fold and will look pretty decent on a resume considering how many different bases a front end covers on top of covering some bases I never even knew of . since I want to be a mac developer obviously it was in my best interest to make my own front end using mac development tools and frameworks (plus i don't know jack about coding in linux, and honestly don't even know c++ that well, I'm pretty much straight Ojb-C)

    I do agree with the philosophy that the OS itself should be the "front end" and that the only reasonable way to do that is through linux, but since most devs here don't know jack about programming for linux we are stuck with alternatives, but those alternatives work very well us.

    Just out of curiosity what kind of "new things" could/should these windows front ends be bringing to the table?
    check us out at: www.neonboombox.com

  2. #12
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,494
    Quote Originally Posted by danielkh View Post
    It just means Kev is about to release something and wants everyone's attention. Not the first time he has started this thread.

    There's this one....
    http://www.mp3car.com/vbulletin/soft...frontends.html

    Then this one....
    http://www.mp3car.com/vbulletin/soft...ead-dying.html

    Here's another....
    http://www.mp3car.com/vbulletin/revi...mparision.html post 9

    Anyway........seems to work for him.
    hahahaha

    Okay, I'll admit the title was a bit harsh. Don't know why now I used that... Would you have read it though if it were called "nghost's uniqueness" ? maybe... The link actually doesn't bash on windows frontends, it just points out core differences. I don't think that windows frontends suck, actually most of them cover more of the features than nGhost does. I would like to see other frontends innovate (then I can steal their ideas and use them to take over the world...)

    Tidder, you are correct that you can use nGhost with any distro you prefer. There is a package for ubuntu on the sourceforge download page: http://sourceforge.net/project/showf...kage_id=249517

    you can get automatic updates if you install it from the nghost ubuntu repo:

    http://nghost-project.com/nghost/downloads/

    It won't override any apps that you already have.

    NeonDev, I believe you are right. I really feel bad that I was harsh. It is a noble cause to develop a frontend for the sake of learning to program. And it's quite satisfying to post it up here and get feedback. That's exactly what I did, in fact, if I hadn't of decided to try and do it on Linux first (or if visual studio wasn't so expensive), I'd probably have done YAWF (yet another windows frontend). I'm glad I stuck with Linux though, the knowledge you gain from learning Linux is definitely empowering.

    I'm a jerk
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  3. #13
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,494
    Just out of curiosity what kind of "new things" could/should these windows front ends be bringing to the table?
    hehe, that's the 1 bazillion dollar question. I'd like to see a windows frontend implement an IPC interface. But that really wouldn't be new cuz nGhost does it. Honestly, (and I may be shooting myself in the foot if anyone decides to do it), if I had to write a windows frontend, this is what I would do:

    I would create a core set of libraries. derived from these libraries would be a couple apps which all communicate and share info with each other using some method of IPC. There would be a media player app, an application app, and possibly a couple other apps for other things (like wifi or something).

    the framework which all would derive would be based on the clutter toolkit (http:clutter-project.org). I would implement a plugin interface. ....most of my ideas for the ideal system can't apply to windows because I'm not allowed to replace core peices of the OS and gui...

    it seems that I would be limited to the level of integration I could have with the OS, which is possibly why the lack of innovation? Not having cool things like dbus in windows kinda makes IPC suck. In Linux, heaps of apps and core system utilities implement a dbus interface for you to tap... However, things like XM and GPS rock in windows for now, so it's really a toss up: do you want all the features, or do you want innovation. I guess most people want the features...
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  4. #14
    Fusion Brain Creator 2k1Toaster's Avatar
    Join Date
    Mar 2006
    Location
    Colorado, but Canadian!
    Posts
    10,045
    IPS is just talking between apps basically. That is the point of a COM object. RoadRunner uses it, that is what all the plugins are. So does almost every app today. Talking over a network can be done with sockets if you wanted too.

    And dbus is the same correct? I dont know the terms but the ideas mostly since self taught. And yes dbus is on windows: http://sourceforge.net/projects/windbus if that is infact what you are talking about.

    When was the last time you saw the flying multi-coloured window logo? 1995?
    Fusion Brain Version 6 Released!
    1.9in x 2.9in -- 47mm x 73mm
    30 Digital Outputs -- Directly drive a relay
    15 Analogue Inputs -- Read sensors like temperature, light, distance, acceleration, and more
    Buy now in the MP3Car.com Store

  5. #15
    Variable Bitrate NeonDev's Avatar
    Join Date
    Feb 2008
    Posts
    431
    I would create a core set of libraries. derived from these libraries would be a couple apps which all communicate and share info with each other using some method of IPC. There would be a media player app, an application app, and possibly a couple other apps for other things (like wifi or something).
    Is there a reason that separate apps working together via IPC is better than a container app housing various "plugin modules"? even if the answer was undoubtedly yes, would it really be feasible under windows?

    I myself prefer plugins because first off, if done right, they all maintain a consistent interface built with a shared framework of controls which also helps with rapid plugin development. I know that you can use a common framework for multiple apps as well, but plugins for the most part require it. I know the whole philosophy of linux is to break free from "the box", but I really think "the box" is a good thing in this case. people want consistency in the look and the feel of the front end they are using (us mac folk anyway, can't really speak for the windows scene...). just so long as the plugin interface is robust and flexible enough to not confine you from accomplishing something you want to do...

    I don't know if the libraries you mentioned had anything to do with interface or not, but if they did I really don't see a significant advantage/disadvantage of either method. other than perhaps using IPC on windows/mac not being quick or efficient enough, but I am sure that is easily addressed in linux since you are basically custom compiling the OS for that purpose. Obviously since windows people don't get to custom compile their OS IPC will always be limited by MS.
    check us out at: www.neonboombox.com

  6. #16
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,494
    Quote Originally Posted by 2k1Toaster View Post
    IPS is just talking between apps basically. That is the point of a COM object. RoadRunner uses it, that is what all the plugins are. So does almost every app today. Talking over a network can be done with sockets if you wanted too.

    And dbus is the same correct? I dont know the terms but the ideas mostly since self taught. And yes dbus is on windows: http://sourceforge.net/projects/windbus if that is infact what you are talking about.

    When was the last time you saw the flying multi-coloured window logo? 1995?
    COM is not the same as dbus: http://dbus.freedesktop.org/doc/dbus...tml#components

    A closer comparison would be to compare dbus to .NET's WCF. While I believe that WCF is a bit more elegant, the main issue is the lack of system utilities and apps that expose an interface. With DBus, I can get info from a number of different system components from networkmanager to the x server (compiz also) to the hardware abstraction layer itself. It's nice that way.

    When I wrote the above wiki page, I made a lot of assumptions based on what my current knowledge of window's frontends. Do RR plugins actually run out of process?

    NeonDev, this is the kind of discussion that i was hoping to have. There are obvious ups and downs to implementing plugins over IPC vs implementing a traditional plugin model. nGhost does both for a number of reasons. For a good reason why IPC can be important, consider the following:

    User X has a multi-carpc system. One for the front, and one for the back for his kids. He wants the front to have ultimate control over everything, but the rear PC is a little more powerful and has more disk space because his kids want to play video games. Because of the large disk space in the rear PC, he stores all his media there.

    Now, using a traditional plugin model, how would you enable control of the second PC? There are probably several different ways to do this, IPC over a network seems to be an elegant solution in this case. (given, you could create a traditional plugin that does the network communication...)

    nGhost accomplishes this by exposing every command it can perform through it's IPC API. The front pc is simply told to connect to the nGhost instance running in the back, and a special screen allows the front pc to control the playback or anything else of the back pc.

    The flexibility of system design and system configuration greatly increases. You can have a headless server act as the main playback device with slim client touchscreens throughout the car all being able to control playback. Or you can have the DB on one machine, the file share on another, the gps/obdII logger on one (there are a number of reasons why you would want a dedicated real-time logging machine separate from media playback and other things...), and the wifi and GUI on another all being able to share the information across the network. Some of these examples are probably not practical, but i hope you see my point. The beauty is nGhost get's all this flexibility for free just by exposing control through it's IPC API.
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  7. #17
    Variable Bitrate NeonDev's Avatar
    Join Date
    Feb 2008
    Posts
    431
    IPC over IP is certainly a necessary function for multi computer setups. Does any windows front end support multi system or even multi display setups?

    is there any benefit for single PC systems considering that is all most of us have/want?
    check us out at: www.neonboombox.com

  8. #18
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,494
    Quote Originally Posted by NeonDev View Post
    IPC over IP is certainly a necessary function for multi computer setups. Does any windows front end support multi system or even multi display setups?

    is there any benefit for single PC systems considering that is all most of us have/want?
    Oh, I forgot to mention, plugins that use the IPC interface are language agnostic. I'm writing a wifi plugin for nghost (which is written in c++) in c#. nGhost comes with a command line IPC translator called nghost-cmd written in python. There is a traffic plugin written in perl.

    The interface allows plugins to be written in whatever language is most productive for the particular purpose of the plugin. This is a benefit for systems on one machine and multi-machines because it allows for rapid plugin development because of the benefits you gain from the language of your choice.

    Of course, you don't get the nice fancy connection abilities that are a part of libnghost's framework, but implementing a socket connection to nghost in most 4th gen languages is just as easy as what the framework provides.

    To answer an earlier question, yes the framework includes graphical interface methods. This of course can't be used by plugins written in languages that can't use c++, but in that case, the plugin can just use nGhost itself to provide a gui with the plugin creates using some methods which are exposed through the IPC API.
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  9. #19
    Fusion Brain Creator 2k1Toaster's Avatar
    Join Date
    Mar 2006
    Location
    Colorado, but Canadian!
    Posts
    10,045
    Quote Originally Posted by NeonDev View Post
    IPC over IP is certainly a necessary function for multi computer setups. Does any windows front end support multi system or even multi display setups?

    is there any benefit for single PC systems considering that is all most of us have/want?
    Nobody has implemented it that I know of, but it is possible to do easily. And I think every main frontend supports 1pc -> multiple monitors (control or display only)

    And like your last sentence, nobody is going to run 3 or 4 carPC's. Even the kids and dad will use 1 PC almost always. Cost and ease of implementation.

    So I can see this being beneficial in Home Automation, but those apps already do networking interfaces so again, not so much new. Maybe in how, but not in end result.
    Fusion Brain Version 6 Released!
    1.9in x 2.9in -- 47mm x 73mm
    30 Digital Outputs -- Directly drive a relay
    15 Analogue Inputs -- Read sensors like temperature, light, distance, acceleration, and more
    Buy now in the MP3Car.com Store

  10. #20
    Fusion Brain Creator 2k1Toaster's Avatar
    Join Date
    Mar 2006
    Location
    Colorado, but Canadian!
    Posts
    10,045
    Quote Originally Posted by kev000 View Post
    Oh, I forgot to mention, plugins that use the IPC interface are language agnostic. I'm writing a wifi plugin for nghost (which is written in c++) in c#. nGhost comes with a command line IPC translator called nghost-cmd written in python. There is a traffic plugin written in perl.

    The interface allows plugins to be written in whatever language is most productive for the particular purpose of the plugin. This is a benefit for systems on one machine and multi-machines because it allows for rapid plugin development because of the benefits you gain from the language of your choice.

    Of course, you don't get the nice fancy connection abilities that are a part of libnghost's framework, but implementing a socket connection to nghost in most 4th gen languages is just as easy as what the framework provides.

    To answer an earlier question, yes the framework includes graphical interface methods. This of course can't be used by plugins written in languages that can't use c++, but in that case, the plugin can just use nGhost itself to provide a gui with the plugin creates using some methods which are exposed through the IPC API.
    RR is written in VB... Plugins have been written in VB, VB.NET, C#, C++, and I think someone had a java something for recording video, but never finished it.
    Fusion Brain Version 6 Released!
    1.9in x 2.9in -- 47mm x 73mm
    30 Digital Outputs -- Directly drive a relay
    15 Analogue Inputs -- Read sensors like temperature, light, distance, acceleration, and more
    Buy now in the MP3Car.com Store

Page 2 of 3 FirstFirst 123 LastLast

Similar Threads

  1. How to: Change windows shell
    By IntellaWorks in forum WinNT Based
    Replies: 44
    Last Post: 04-12-2012, 07:29 PM
  2. New Frontend for Windows and Linux
    By gbr in forum Other Cool Front Ends
    Replies: 68
    Last Post: 01-21-2009, 08:55 PM
  3. Vista experiences anyone?
    By Nomader in forum Road Runner
    Replies: 80
    Last Post: 01-10-2008, 08:01 PM
  4. Installing Windows 2000 Pro on a 1GB Microdrive
    By JeremyM in forum WinNT Based
    Replies: 2
    Last Post: 05-07-2005, 09:56 PM
  5. A few observations in OS and why I'm now using Windows 2003...
    By Mastiff in forum Software & Software Development
    Replies: 12
    Last Post: 01-21-2004, 09:11 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •