LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > General
User Name
Password
General This forum is for non-technical general discussion which can include both Linux and non-Linux topics. Have fun!

Notices



Reply
 
Search this Thread
Old 10-13-2010, 01:46 PM   #1
TheIndependentAquarius
Senior Member
 
Registered: Dec 2008
Posts: 4,634
Blog Entries: 29

Rep: Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900
What can be more simpler than a GUI based Text editor to start an open source project ?


Already looked up SourceForge.
I want to start a very simple open source project based on C/C++ and Qt with zero Database dependence.

Kindly guide.
 
Old 10-13-2010, 02:23 PM   #2
sag47
Senior Member
 
Registered: Sep 2009
Location: Philly, PA
Distribution: Kubuntu x64, RHEL, Fedora Core, FreeBSD, Windows x64
Posts: 1,509
Blog Entries: 35

Rep: Reputation: 384Reputation: 384Reputation: 384Reputation: 384
This post is a good resource for what you wish to accomplish.

I recommend you use the latest QT Creator as it comes with tons of live code samples of projects which will help you get any project off of the ground.

As for what would be simpler is a GUI based calculator where a user types a calculation in a display (or by pushing buttons of the calculator) and then calculating it.

This can be as simple or complicated as you want it with basic arithmetic, trigonometry, number conversion (base/temperature/units), advanced forms, menus, key detection, history tracking, and the list goes on. I created one when I was learning JavaScript and it branched off into libraries for other applications.

Last edited by sag47; 10-13-2010 at 02:30 PM.
 
Old 10-13-2010, 02:27 PM   #3
TheIndependentAquarius
Senior Member
 
Registered: Dec 2008
Posts: 4,634
Blog Entries: 29

Original Poster
Rep: Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900
sag47

That was helpful. Thanks. Is there something else that can be considered instead of the Editor, no Calculator please.

You have now edited your post.
I have already built a calculator, though it didn't have a GUI.

Last edited by TheIndependentAquarius; 10-13-2010 at 02:33 PM.
 
Old 10-13-2010, 02:38 PM   #4
sag47
Senior Member
 
Registered: Sep 2009
Location: Philly, PA
Distribution: Kubuntu x64, RHEL, Fedora Core, FreeBSD, Windows x64
Posts: 1,509
Blog Entries: 35

Rep: Reputation: 384Reputation: 384Reputation: 384Reputation: 384
Well your question is a matter of relativity. I don't know what your strengths are so there's no way for me to surely recommend a project which will work for you.

How about a simple MDI application which is an image viewer:
1 menu called File with 2 submenus (Open and Close).
Have it only open 1 format (uncompressed BMP which is one of the simplest formats)

Your program will read the binary format of the image opened, read it's dimensions, create an image dialog, and then draw pixel by pixel in a sweep the image from the file onto the screen where the user can see it.

That is a very simple program if you've done image processing before and even if you haven't it's a good experience to learn how. You can add annotation and drawing tools to it later.

Last edited by sag47; 10-13-2010 at 02:42 PM.
 
Old 10-13-2010, 02:47 PM   #5
sag47
Senior Member
 
Registered: Sep 2009
Location: Philly, PA
Distribution: Kubuntu x64, RHEL, Fedora Core, FreeBSD, Windows x64
Posts: 1,509
Blog Entries: 35

Rep: Reputation: 384Reputation: 384Reputation: 384Reputation: 384
The best way to tackle something like that is to create a base library for opening the image and storing it into RAM.

Separate the functions of your backend from your GUI (opening image, saving a new one, loading it into RAM for drawing, or even a get pixel function which takes coordinates for drawing and returning a color value for that pixel). So your GUI just plugs into your backend with a single function call.

If you do that then your application code will be very modular and the GUI can be redesigned or entirely reimplemented in another platform without much hassle.

Last edited by sag47; 10-13-2010 at 08:52 PM.
 
Old 10-13-2010, 04:01 PM   #6
MrCode
Member
 
Registered: Aug 2009
Location: Oregon, USA
Distribution: Arch
Posts: 864
Blog Entries: 31

Rep: Reputation: 148Reputation: 148
Quote:
Originally Posted by sag47
How about a simple MDI application which is an image viewer:
1 menu called File with 2 submenus (Open and Close).
Have it only open 1 format (uncompressed BMP which is one of the simplest formats)
LOL, this is really close to a small-time thing I did back when I was on Windows, except in mine you could negate the image colors, too (it was just using raw Windows GDI, no cross-platform libs unfortunately ).
 
Old 10-13-2010, 10:56 PM   #7
lumak
Member
 
Registered: Aug 2008
Location: Phoenix
Distribution: Arch
Posts: 799
Blog Entries: 32

Rep: Reputation: 109Reputation: 109
Write software for tablet PCs. Or add extensions to make software more useful for tablets. Such that selection methods suck when you don't have a control key. Adding a check box next to each message in an e-mail client (like that on web mail interfaces) would improve usefulness. Or adding a virtual keyboard onto a secure screen locking program as there is no way to securely lock your session and use a separate virtual keyboard.
 
Old 10-14-2010, 07:14 AM   #8
TheIndependentAquarius
Senior Member
 
Registered: Dec 2008
Posts: 4,634
Blog Entries: 29

Original Poster
Rep: Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900
sag47

Thanks for the efforts,

Of course it is my fault, I did not mention my limitations in my first post.

I have not used Qt before nor any other GUI creation tool.
My maths is very weak, in fact I was never interested in Maths.
I want some project in which I can learn how to apply various "design patterns" using "C++".

Since I have to choose my domain as an Application programmer I think it is necessary for me to know at least one GUI tool so I selected Qt. I worked for sometime in C++, so I want to use that too.

Now can someone guide me ?
 
Old 10-16-2010, 06:21 PM   #9
sag47
Senior Member
 
Registered: Sep 2009
Location: Philly, PA
Distribution: Kubuntu x64, RHEL, Fedora Core, FreeBSD, Windows x64
Posts: 1,509
Blog Entries: 35

Rep: Reputation: 384Reputation: 384Reputation: 384Reputation: 384
Quote:
Originally Posted by anishakaul View Post
in fact I was never interested in Maths.
1st: programming in any language is math. So if you don't like math then you chose the wrong profession unless you're a GUI designer. In which case you're just working in Gimp or Photoshop on icons and the brute work is done by programmers. In this case you needn't know C++ so go with Graphic Design.

Quote:
Originally Posted by anishakaul View Post
I want some project in which I can learn how to apply various "design patterns" using "C++".
2nd: This is so vague I don't think anyone can answer you. Why do you quote yourself and what are these design patterns you're talking about? Do you mean templates that can be used to change the look of your program? Or do you mean a program that generates templates for other programs based on user input? There's too many questions we would ask ourselves to figure out what you're talking about.

Why don't you just bite the bullet and start programming something? Either one of the projects suggested here or make up your own. Then, once you have some code which you're having trouble with ask a more specific question.

Quote:
Originally Posted by anishakaul View Post
Now can someone guide me ?
We can't. We can't be innovative for you. We can only point you in the right direction. Based on the information you gave us and the questions you asked we would basically be pointing in all directions at once which is useless. Please step back, think, and formulate a better question to your problem. We can't make design choices for you but we can certainly help you correct some code that is giving you compiling errors. When I say we, I mean we the LQ community which you are apart of.

Hopefully you understand what I mean.

Last edited by sag47; 10-16-2010 at 06:22 PM.
 
Old 10-17-2010, 11:07 AM   #10
dugan
Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 5,005

Rep: Reputation: 1560Reputation: 1560Reputation: 1560Reputation: 1560Reputation: 1560Reputation: 1560Reputation: 1560Reputation: 1560Reputation: 1560Reputation: 1560Reputation: 1560
Quote:
Originally Posted by sag47 View Post
programming in any language is math.... what are these design patterns you're talking about?
http://en.wikipedia.org/wiki/Design_patterns

They're my favorite example of a programming concept that isn't mathematically modelable.

EDIT: the Wikipedia link should really have led here:

http://en.wikipedia.org/wiki/Design_...ter_science%29

Last edited by dugan; 10-17-2010 at 11:19 PM.
 
Old 10-17-2010, 08:01 PM   #11
sag47
Senior Member
 
Registered: Sep 2009
Location: Philly, PA
Distribution: Kubuntu x64, RHEL, Fedora Core, FreeBSD, Windows x64
Posts: 1,509
Blog Entries: 35

Rep: Reputation: 384Reputation: 384Reputation: 384Reputation: 384
Quote:
Originally Posted by dugan View Post
http://en.wikipedia.org/wiki/Design_patterns

They're my favorite example of a programming concept that isn't mathematically modelable.
Ah I see. Well then I guess I'll let someone else talk about that. It's out of the scope of my current expertise.

@anishakaul: you can just ignore my last post regarding me questioning you on design patterns.

Last edited by sag47; 10-17-2010 at 08:02 PM.
 
Old 11-22-2010, 05:53 AM   #12
TheIndependentAquarius
Senior Member
 
Registered: Dec 2008
Posts: 4,634
Blog Entries: 29

Original Poster
Rep: Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900Reputation: 900
Thanks for the concern.

Quote:
Originally Posted by sag47 View Post
What are these design patterns you're talking about?
This book is one of the best that I have found so far on the "object oriented design patterns". Just "Look inside" the index of that book and you'll know what I was talking about.
http://www.amazon.com/Object-Oriente.../dp/0136291554

Quote:
Originally Posted by sag47 View Post
Why don't you just bite the bullet and start programming something?
That's what I have done now I have started the "Text Editor" and who said it is simple ???? Since now I am thinking on the performance I have learnt a new way of representing data {by searching Google of course} and then there is the mighty ncurses to be used! and a make file is to be written...wow so much work to do.. It would have been simple if I had gone with the arrays and closed my eyes on the other problems
http://www.linuxquestions.org/questi...acters-844505/

The thread I have pointed to is "not" for advertisement, I just meant to say that I have started "something".

Thanks again.

Last edited by TheIndependentAquarius; 11-22-2010 at 05:55 AM.
 
Old 11-22-2010, 07:58 AM   #13
Alexvader
Member
 
Registered: Oct 2009
Location: Japan
Distribution: Arch, Debian, Slackware
Posts: 994

Rep: Reputation: 94
Quote:
Originally Posted by anishakaul View Post


What can be more simpler than a GUI based Text editor to start an open source project ?


Already looked up SourceForge.
I want to start a very simple open source project based on C/C++ and Qt with zero Database dependence.

Kindly guide.
I know what

A cooperative multi agent framework, driven by Recurrent Neural Networks with Dynamical topological update, in charge of the coordination of an autonomous fleet of Drone Fighter aircraft, Drone tactical bombers, and early warning, ranging and ECM platforms...

Can anything be simpler than that... ?

.... oh, and implement all this in RtOS, in really fast and massively redundant computing nodes, hardware shipped in each aircraft, served by wideband, frequency agile, stream encrypted telemetry and data-link connections between the drones...

... once all this is set up, just perform a "real" test, on the autonomy and cognitive capabilities of that... "thing"...

http://en.wikipedia.org/wiki/Collective_intelligence

.... over DPRK... http://www.korea-dpr.com/

Last edited by Alexvader; 11-22-2010 at 08:13 AM.
 
Old 11-22-2010, 08:33 AM   #14
catkin
LQ 5k Club
 
Registered: Dec 2008
Location: Tamil Nadu, India
Distribution: Servers: Debian Squeeze and Wheezy. Desktop: Slackware64 14.0. Netbook: Slackware 13.37
Posts: 8,563
Blog Entries: 29

Rep: Reputation: 1179Reputation: 1179Reputation: 1179Reputation: 1179Reputation: 1179Reputation: 1179Reputation: 1179Reputation: 1179Reputation: 1179
Quote:
Originally Posted by anishakaul View Post
I have started the "Text Editor" and who said it is simple ???? Since now I am thinking on the performance I have learnt a new way of representing data {by searching Google of course} and then there is the mighty ncurses to be used! and a make file is to be written...wow so much work to do.. It would have been simple if I had gone with the arrays and closed my eyes on the other problems
Projects can get complex very quickly when the creator is tempted to make them optimal. Sure, an optimal solution is the ultimate aim but I would counsel keeping it simple at first. In this case, use arrays or even a single array for starters. They are sub-optimal but you can use the features of C++ to hide the data structures behind the interfaces (that's probably the wrong jargon for C++). If you structure the software cleanly you can refine the data structures later. Keywords: stubs, rapid prototyping.

You can even start without a versioning repository and without automated testing but they will save time overall so chances are you will want to add them later.

If the intention is to practice application development then none of the time taken familiarising with the development environment toolset will be wasted -- although you may feel you are being distracted from design and programming!

You might like to incorporate debugging facilities from the outset. They are usually a great investment, repaying many times over the time spent creating them.

If you are really virtuous you will document it too -- starting with functional and interface (OS, internal and external) specifications, data structure descriptions, coding standards, naming conventions, architecture, etc.
 
Old 11-22-2010, 01:07 PM   #15
H_TeXMeX_H
Guru
 
Registered: Oct 2005
Location: $RANDOM
Distribution: slackware64
Posts: 12,928
Blog Entries: 2

Rep: Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269Reputation: 1269
What can be more simpler than a GUI based Text editor to start an open source project ?

A CLI based text editor.
 
  


Reply

Tags
text editor


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
GUI (preferably GTK) based open source Computer Algebra System Kenny_Strawn Linux - Software 5 09-11-2010 09:27 AM
Qt based rich text editor _3V Programming 4 11-15-2006 07:15 AM
Text based .ics editor bng Linux - Newbie 5 10-01-2006 04:44 PM
LXer: Google Applies Text-Search to Open-Source Project Hosting LXer Syndicated Linux News 0 08-05-2006 06:54 PM
How do I start an Open Source Software Project... when I'm not a programer BaerRS Programming 1 10-23-2001 03:55 PM


All times are GMT -5. The time now is 01:17 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration