DIGIT-ARC read-only archive · snapshot: July 23, 2026

Which language should I learn?

28 posts · originally from https://geek.digit.in/community/threads/which-language-should-i-learn.32155/

aditya.shevade
aditya.shevade Original post #1
Jul 17, 2006 at 6:11 PM
Hi

I am going to join FY engineering from this year. I have already taken an admission in a c language course. I want to know apart from c, which webpage designing language should I learn? html, jawascript or php or is there any one better than these? Please help me. I have some knowledge in C but nothing in these 3.

Aditya
R
Jul 17, 2006 at 6:30 PM
php now is very hot.........however .net presently have greater job aspect ..
casanova
Jul 17, 2006 at 9:36 PM
ASP.NET with c#.net
kalpik
kalpik #4
Jul 18, 2006 at 7:55 AM
LAMP => Linux, Apache, MySQL, PHP. This is the best combo right now.
A
Jul 18, 2006 at 7:58 AM
aditya.shevade said:
Hi

I am going to join FY engineering from this year. I have already taken an admission in a c language course. I want to know apart from c, which webpage designing language should I learn? html, jawascript or php or is there any one better than these? Please help me. I have some knowledge in C but nothing in these 3.

Aditya
master C first then go for perl or php.
M
Jul 18, 2006 at 10:25 AM
From your post it sounds you still don't know html and javascript. You should learn those first if you haven't done so still cos they will form the basics. Later you can move on to learn CSS and PHP.
aditya.shevade
Jul 18, 2006 at 11:41 AM
So I should have a minimal knowledge of html or javascript to learn php? Then it's better to master it first. What do you think?

Aditya
shakti
shakti #8
Jul 18, 2006 at 12:50 PM
Go with PHP
M
Jul 18, 2006 at 5:04 PM
IMO sit and master HTML and JavaScript first. They are easy languages to learn. So, then when you go with php you will be confident and comfortable. HTML still forms the base of www, so it cannot be ignored IMO.
Pathik
Pathik #11
Jul 19, 2006 at 4:28 PM
html is too easy.... u can learn it in 1 day....
even i m gonna start my engg....
so after html learn c first as it ll be useful in fe...
bukaida
bukaida #12
Jul 19, 2006 at 9:00 PM
Man, What ever computer language you learn, You must learn spoken english
with it in order to sustain in the industry.:) It is specially required for the fresh job seekers with non convent background.
L
Lukka #13
Jul 19, 2006 at 10:28 PM
i know a little about html...so can i start with php or do i need to perfect my html?
bukaida
bukaida #14
Jul 19, 2006 at 10:56 PM
php mainly deals with html forms.So be comfortable with them first.
aditya.shevade
Jul 20, 2006 at 10:59 AM
@ Bukaida

Thank you for the spoken english advise. My father has been telling me the same thing. I think I will proceed with C then html (in one day, well if pathiks can pick it up in one day why can't I?) and then javascript and php.

Thanks guys.
Aditya
Pathik
Pathik #16
Jul 20, 2006 at 2:13 PM
r u interested in wml(wap)... dont take wml too seriously cos its similar to html....also nowadays the default browsers of all mobiles support html...
also with html try a lil bit of css,xml,xhtml..... i m going the same way...
i m gonna start c now....

also 1st fe engg has lil bit of unix.... so install ny linux distro and try out the commands....
iMav
iMav #17
Jul 20, 2006 at 3:37 PM
hindi - considered to be the next major language on the net
dheeraj_kumar
Jul 20, 2006 at 7:58 PM
That was the first time I heard that. I hope it isn't true. I hate hindi! English rules all the way!

I hope I'm not starting language wars.

To the question, i think you should learn c and then c++. so wherever you work in the IT industry it will be easy for you. c++ is easy if you know c. Also learn HTML and Javascript.
knight17
knight17 #20
Jul 20, 2006 at 10:23 PM
If you want to be a web designer go for..
HTML
XHTML
XML
CSS
Javascript
AJAX
ASP
PHP etc..
A
Jul 21, 2006 at 7:42 AM
" I hate hindi! English rules all the way!"

how could you say so,its shame on your part being an indian and embracing foreign language so much,I do use english or hinglish for all of my daily cores yet I dont hate any language.
iMav
iMav #22
Jul 21, 2006 at 9:41 AM
shri 75 please do not start a language war .... if i am not mistaken dheeraj kumar meant that it is dificult to read and type hindi (using hindi on comps) ...... and it certainly is difficult to type i tried and it was a headache and yes it is also true that net experts have said that hindi, chinese and english are the 3 future languages of the net.... not far are the days when hindi will be the first lanuage in america with english as the second
aditya.shevade
Jul 21, 2006 at 4:36 PM
Look here what did the post start with...... and what is going on right now :)

Aditya
PrinceHeart
Jul 21, 2006 at 4:56 PM
pathiks said:
html is too easy.... u can learn it in 1 day....
even i m gonna start my engg....
so after html learn c first as it ll be useful in fe...

Well I have started learning C now. And i did few web designing with frontpage and publishers. But i want to learn html.

So as pathiks said - "u can learn it in 1 day" - is there any link/site i can follow for the tutorials for html ? Do let me know - either in this post or private message.

thank
cheerz
rohan
rohan #25
Jul 21, 2006 at 6:57 PM
@pathiks: You think HTML is so easy??? Just check out W3C.org for once or how about a small test here: *webdesign.about.com/c/ec/9.htm

xHTML/HTML is not as simple as it seems to be. There is a lot of scientific and disciplined approach to it. Anybody can write HTML, but few can write it perfectly and nicely.

no offences meant ;), just debating.
A
Jul 22, 2006 at 7:43 AM
mAV3 said:
shri 75 please do not start a language war .... if i am not mistaken dheeraj kumar meant that it is dificult to read and type hindi (using hindi on comps) ...... and it certainly is difficult to type i tried and it was a headache and yes it is also true that net experts have said that hindi, chinese and english are the 3 future languages of the net.... not far are the days when hindi will be the first lanuage in america with english as the second

dear mAV3, I am not starting any kinda war,I am always at peace, I responded to the word hate used by mr. dheeraj, btw no hard feelings against anyone,we are the citizens of the world,let there be peace everywhere.
P
Dec 26, 2007 at 9:18 PM
I am considering learning a new programming language.
I am a It person with both hardware and software knowledge. May day to day
job is a LAN Administrator. I.E. installing networks, servers, pc's installing
software, running backups and occasionally writing a quick program.
I usually through together quick programs in Borland C. As this is what I have
been using for one program a year. (I only spend a couple of hundred hours
a year programming)
1.First language Basic on a number of machines. TRS-80,System 80,Applesoft etc.
2.Looked at Pascal. Did not realy get into it.
3.Read a book on LISP .. could not get my head around it.
4.Enjoyed learning Prolog. Ran Endburrogh Prolog on Vax.
5.Learnt and used Turbo C and Borland C. Most experience on these compilers
6.HTML on Notepad, Homesite etc.
Machine Language.
1. Z-80.. #23 inc HL. #c3 Jump, #cd call ...Cheers to Craig Amey. HomeBuilt Z-80 from scratch
2. M680XX I like these CPUs
3. 80x86 ..TSR routines and patches to code. Cheers to Sourcer (V-Comms)

Which language I should learn?
My wish list:
* The language should be available for both Windows and GNU/Linux.
* The language should be advanced enough to build complex programs for GUI
apps, graphical visualization and what not (ie. have a Resouce editor at least)
* Easy to pick up once per year.
* The language should have a future - I want to use it for the next 10 years.
* The language should be able to read directories ..(ie findfirst...Findnext)
* Easy string handling, and varible arrays ..(C99 does not have runtime varible
arrays.)(I.e. automated memory handling. garbage removal)

I am looking at maybe Python or C# now that mono exits . C++ looks to complex to
use only once a year.
My next project is to put a window front end on various c programs.
example code

Any comments are welcome on sugested languages and good programing books.
Even on Borland C (C++).
Cheers All
James P.
<code>
* File = F:\RIS\super\JLP\TC\EMTPYDIR1.C
* Under = Software
* Date = 1/1/2007
* Update= 1/4/2007
* Vers = 4.0
*
* James P*******'s DIRerctory Empty Program
* Version 4.0
* Hardcoded BAT & Log output
*
* This program outputs a directory list with number and size of files
* It also deletes all empty directories for Floppy, Hard Disks
* Updated for 98se,NT,2000,and XP
*
* Usage:
*
* EMPTYDIR [options] [outputfile]
*
* Future options
* /H -- HTML Output
* /k -- Actually remove files
* /t -- Kilobytes
* /T -- Thousands of Bytes
* /V -- Version output
*/
#include <dir.h>
#include <dos.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "getopt.h"
/*
* Defined types
*
*/
typedef enum {FALSE,TRUE} BOOLEAN;
typedef enum {GOOD,BAD} RCODE;
typedef struct ffblk FFBLK;
/*
* Prototypes
*/
long dir_size(void);
long dir_space(void);
void files(int level);
void line(int level);
RCODE firstdir(char *pathname,FFBLK *dirblk);
RCODE nextdir(FFBLK *dirblk);
int nextlevel(RCODE done,FFBLK *dirblk,FFBLK *tempblk);
int processargs(int argc, char **argv);
void usage(void);
/*
* External varibles in optarg.h
*/
extern char *optarg;
extern int optind;
/*
* Globals
*/
int level,dirnum,tdeleted,tempty,tfiles,tspace,tsize;
BOOLEAN csv,debugme,html,fileout,kill,thousands;
FILE *fhdir; // These file handles are for HTML output files
FILE *fhlog; // These file handles are for Log output files
FILE *fhbat; // These file handles are for Batch output files
char buf[100],graph[20];
char progname[80]="Emptydir";
char ver[10]="Beta 4.0";
int main(int argc, char **argv)
{FFBLK dirblk,tempblk;
char buf[100],path[MAXDIR];
char filehtml[20];
int son;
RCODE done;
debugme=FALSE;
fileout=FALSE;
kill=FALSE;
html=TRUE;
thousands=FALSE;
dirnum=0;
level=0;
tdeleted=0;
tempty=0;
tspace=0;
tsize=0;
getcwd(buf,100);
printf("James P*****s Empty Directory %s.\n",ver);
printf("\%s directory's subdirectorys.\n",buf);
processargs(argc,argv);
if(html)
{strcpy(filehtml,"emptydir.log");
printf("filehtml=%s",filehtml);
if((fhlog= fopen(filehtml,"w+b"))!=NULL)
{fprintf(fhlog,"Empty Directory Log file version=%s\r\n",ver);
fprintf(fhlog,"===================================\r\n");
fprintf(stdout,"file %s is open\n",filehtml);
}
else
{printf("file %s has failed to open\n",filehtml);
abort();
}
strcpy(filehtml,"EmptyDirs.HTM");
if((fhdir= fopen(filehtml,"w+b"))!=NULL)
{fprintf(fhdir,"<Head><meta name=\"generator\" content=\"JPDIR-%s\">\r\n",ver);
fprintf(fhdir,"<LINK REL=\"stylesheet\" TYPE=\"text/css\" HREF=\"jpdir.css\">");
printf("file %s is open\n",filehtml);
}
else
{printf("file %s has failed to open\n",filehtml);
abort();
}
strcpy(filehtml,"EmptyDirs.Bat");
if((fhbat= fopen(filehtml,"w+b"))!=NULL)
{fprintf(fhbat,"Echo Are you sure you want to delete empty directories\n");
fprintf(fhbat,"pause\n");
printf("file %s is open\n",filehtml);
}
else
{printf("file %s has failed to open\n",filehtml);
abort();
}
}
if (html)
{fprintf(fhdir ,"<title>JDIR</title></head>\r\n <Body>");
fprintf(fhdir ,"<H1>\%-12s directory's subdirectorys & files</H1><Table CELLSPACING=0>");
}
fprintf(fhlog,"DirNum,Level,Path,DSize\n");
if (debugme){ printf("Buffer = %s\n",buf);}
done=getcurdir(0,path);
if (debugme) {printf("path = %s\n",path);}
if(done)
{printf("Directory error");
abort();
}
if (fileout) files(-1);
tspace=dir_space();
tsize=dir_size();
printf("root files=%ld space=%ld\n",tsize,tspace);
// now do directory(ies)
done=firstdir("*",&dirblk);
firstdir("*",&tempblk);
while (!done)
{if (debugme) printf("About to change to %ld--%s\n",level,dirblk.ff_name);
chdir(dirblk.ff_name);
dirnum++;
if (debugme) printf("about to run nextlevel\n");
son=nextlevel(done,&dirblk,&tempblk);
tsize+=son;
if (debugme) printf("back from nextlevel\n");
chdir("..");
//==
if (son==0)
{fprintf(fhlog,"=delete");
fprintf(fhdir,"=delete");
fprintf(fhlog,"\r\nRmdir %s\r\n",dirblk.ff_name);
fprintf(fhbat,"\r\nRmdir %s",dirblk.ff_name);
if (kill)
{tdeleted++;
printf("Delete %s\n",dirblk.ff_name);
rmdir(dirblk.ff_name);
}
tempty++;
}
//==
done=nextdir(&dirblk);
}
if(html){fprintf(fhdir,"<tr>%s has found %ld files, %ld space in %ld Directories\n",progname,tsize,tspace,dirnum);
fprintf(fhdir,"<tr>%s has found %ld Empty Directories, Deleted %ld Directories\n",progname,tempty,tdeleted);
fprintf(fhdir ,"</Table><H1>End of file</H1></Body><HTML>");
printf("about to close HTML file\n");fclose(fhdir);;
}
// progname = *argv;
printf("%s has found %ld files, %ld space in %ld Directories\n",progname,tsize,tspace,dirnum);
printf("%s has found %ld Empty Directories, Deleted %ld Directories\n",progname,tempty,tdeleted);
fprintf(fhlog,"%s has found %ld files, %ld space in %ld Directories\n",progname,tsize,tspace,dirnum);
fprintf(fhlog,"%s has found %ld Empty Directories, Deleted %ld Directories\n",progname,tempty,tdeleted);
printf("about to close log file\n");fclose(fhlog);;
printf("about to close Bat file\n");fclose(fhbat);;
return 0;
}
void line(int level)
{int i;
for (i=0;i<level;i++)
{printf("%c ",graph);
if (html)
{if (graph==' ')
{fprintf(fhdir," ");
}
else
{fprintf(fhdir,"│");
}
}
}
}
/*
* Firstdir
* Finds first directory that is not . or ..
*
* Returns Good if directory found
*/
RCODE firstdir(char *pathname,FFBLK *dirblk)
{RCODE done;
done=findfirst(pathname,dirblk,FA_DIREC);
while(!done)
{if (dirblk->ff_attrib != FA_DIREC)
{if (debugme) printf("%s is not a dirctory\n",dirblk->ff_name);
}
else {if (dirblk->ff_name[0]=='.')
{if (debugme) printf("found %s\n",dirblk->ff_name);
}
else {if (debugme) printf("done on ffname=%s\n",dirblk->ff_name);
done=GOOD;
return done;
}
}
done=findnext(dirblk);
}
done=BAD;
return done;
}
/*
* nextdir
* Finds Next directory that is not . or ..
*
* Returns Good if directory found
*/
RCODE nextdir(FFBLK *dirblk)
{RCODE done;
done=findnext(dirblk);
while(!done)
{if (dirblk->ff_attrib != FA_DIREC)
{if (debugme) printf("%s is not a dirctory\n",dirblk->ff_name);
}
else {if (dirblk->ff_name[0]=='.')
{if (debugme) printf("found %s\n",dirblk->ff_name);
}
else {if (debugme) printf("done on ffname=%s\n",dirblk->ff_name);
done=GOOD;
return done;
}
}
done=findnext(dirblk);
}
done=BAD;
return done;
}
long dir_space()
{RCODE done;
long space;
FFBLK ffblk;
space=0;
done=findfirst("*.*",&ffblk,FA_SYSTEM|FA_HIDDEN);
while (!done)
{space+=ffblk.ff_fsize;
done=findnext(&ffblk);
}
return(space);
}
long dir_size()
{RCODE done;
long size;
FFBLK ffblk;
size=0;
done=findfirst("*.*",&ffblk,FA_SYSTEM|FA_HIDDEN);
while (!done)
{size++;
done=findnext(&ffblk);
}
return(size);
}
int nextlevel(RCODE done,FFBLK *dirblk,FFBLK *tempblk)
{FFBLK dirnew,dirnew2;
long size,space,son;
size=0;
son=0;
space=0;
if (fileout) files(-1);
if (html)
{fprintf(fhdir,"<TR><TD><TT>");
}
line(level);
if(nextdir(tempblk))
{printf("\xC0\xc4");
if (html)
{fprintf(fhdir ,"└─</TT>");
fprintf(fhdir ,"%s",dirblk->ff_name);
}
graph[level]=' ';
}
else {printf("\xC3\xc4");
if (html)
{fprintf(fhdir ,"├─</TT>");
fprintf(fhdir ,"%s",dirblk->ff_name);
}
graph[level]='\xB3';
}
printf("sub %s",dirblk->ff_name);
space=dir_space();
size=dir_size();
printf("\t\tfiles=%ld space=%ld\n",size,space);
fprintf(fhlog ,"\n%d,%d,%s,%ld,%ld",dirnum,level,dirblk->ff_name,size,space);
// now do directory(ies)
done=firstdir("*",&dirnew);
firstdir("*",&dirnew2);
while (!done)
{if (debugme) printf("About to change to %ld--%s\n",level,dirnew.ff_name);
chdir(dirnew.ff_name);
dirnum++;
level++;
son=nextlevel(done,&dirnew,&dirnew2);
size+=son;
getcwd(buf,100);
chdir("..");
//==
if (son==0)
{fprintf(fhlog,"=delete");
fprintf(fhdir,"=delete");
fprintf(fhbat,"\r\nRmdir \"%s\"",buf);
fprintf(fhbat,"\r\nRmdir %s",dirnew.ff_name);
if (kill)
{tdeleted++;
printf("Delete %s\n",dirnew.ff_name);
fprintf(fhlog,"\nDelete %s",dirnew.ff_name);
fprintf(fhlog,"\r\nRmdir %s\r\n",dirnew.ff_name);
if (rmdir(dirnew.ff_name))
{printf("\nCan not delete %s and error=%d",dirnew.ff_name,errno);
perror("error");
}
}
tempty++;
}
//==
level--;
done=nextdir(&dirnew);
}
getcwd(buf,100);
fprintf(fhlog ,"\n=%d,%d,%s,%ld,%ld",dirnum,level,buf,son,size);
return(size);
}
int processargs(int argc, char **argv)
{
int opt, rc = 0;
BOOLEAN file = FALSE;
// progname = *argv;
strcpy(progname,argv[0]);
printf("progname =%s",progname);
while ((opt = pgp_getopt(argc, argv, "bfhktT?")) != EOF)
{printf("opt=%c",opt);
switch (opt)
{case 'b': debugme=TRUE;printf("b used\n"); break;
case 'f': file =TRUE; printf("f used\n"); break;
case 'k': kill=TRUE; break;
case 'r': kill=TRUE; break;
case 't': thousands=TRUE; break;
case 'T': thousands=FALSE; break;
default: usage();
}
}
return rc;
}
void files(level)
{int i;
RCODE done;
FFBLK ffblk;
char shorty[13];
// dirnum++;
done=findfirst("*.*",&ffblk,0);
if (!done)
{if(html)
{for (i=0;i<level;i++)
{if (graph==' ')
{fprintf(fhdir,"│");
}
else
{fprintf(fhdir,"│");
}
}
}
}
while (!done)
{line(level+2);
tfiles++;
GetShortPathName(ffblk.ff_name,shorty,13);
printf("%12s",shorty);
printf("\t%8ld",ffblk.ff_fsize);
printf("\t%s\n",ffblk.ff_name);
done=findnext(&ffblk);
}
dirnum++;
}
void usage(void)
{
fprintf(stderr, "usage: EmptyDir %s [-bfhkmtvw] [-f [file]] \n",ver);
fprintf(stderr, "Deletes files based on date, time, size, Version or MD5 Message Digests\n");
fprintf(stderr, " -b Debug output (Verbose mode!) (default is no Debug)\n");
fprintf(stderr, " -d Database output (Verbose mode!) (No Database output yet!\n");
fprintf(stderr, " -f Files in ouput (default is files.csv)\n");
fprintf(stderr, " -h No HTML output (default is HTML Output\n");
fprintf(stderr, " -k Kill empty Directories (default is Not to Remove Directories)\n");
fprintf(stderr, " -r Remove empty Directories (default is Not to Remove Directories)\n");
fprintf(stderr, " -t Thousands of Bytes (default is Bytes)\n");
fprintf(stderr, " -T KiloBytes (default is Bytes)\n");
fprintf(stderr, " Future options\n");
fprintf(stderr, " -d Database output\n");
exit(2);
}
</code>
C
Dec 27, 2007 at 8:03 PM
HTML, XHTML, XML, CSS, Javascript, vbscript, AJAX, ASP and PHP.

I know only HTML, i am not greedy, i have left all the other languages for you guys. :D