Tom's Site for Programming?

Page 2 - Seeking answers? Join the Tom's Hardware community: where nearly two million members share solutions and discuss the latest tech.
We obviously have Tomshardware and Tomsguide, but will Tom's ever expand to the software and programming side of the world of computers? As much as I enjoy helping people with hardware, I'd love to help people with programming (because frankly Stackoverflow just makes me mad).
 
Solution
I know, I'm speaking on the idea of adding software content on the editorial side. I already said I think a place in the forums would be welcomed change.

randomizer

Champion
Moderator


It's usually not the complexity of the required code that gives away a homework question, it's the way it is asked. When someone wants to be spoon fed a solution it's a massive red flag. There is nothing inherently wrong with homework questions as long as the goal is to learn and not to plagiarise, but they do tend towards asking for a code dump.
 

itmoba

Reputable
Aug 14, 2015
768
0
5,360


Agreed. I do, however, think that code dumping is permissible on very rare occasions, like,

{*} assembly language (M68000 or 6502, but not x86 and ARM; this is because the M68000 and 6502 are rarely encountered in schools),
{*} C (only when dealing with kernel-space, FUSE, and 'volatile' -- many expert books don't event touch the volatile keyword -- in fact, it's the most poorly understood keyword, even though it's easy to understand if you know assembly),
{*} C++ (advanced polymorphism),
{*} Perl, when it's very spartan code, like,
Perl:
eval unpack u=>q{_;7E`26QL,#!/3SUQ=RAA8F,@96%S>2!A<R!O;F4M='=O+71H<F5E*3MF;W)E86-H)&\P23%O;&QO3RA`26QL;,#!/3RE[<')I;G0D;S!),6]L;&]/+B)<;B)]}
{*} New languages, like, Swift (the Apple one, not the other), Julia, and Vala -- technically, Julia has a boatload of documentation, and Vala is just another C-like language
{*} Inherently abstruse languages (e.g., Brainf*ck)
 

randomizer

Champion
Moderator

Those are not common for homework questions though. Most homework questions are going to be fairly simple problems needing solutions in C++, C# or Java, because academics know that enterprise code is not written in esoteric languages.


If you see what it looks like you might change your mind :)

EDIT: Typos, spacing.
 

itmoba

Reputable
Aug 14, 2015
768
0
5,360
I was talking about code dumping in general, not just homework. Sorry if I wasn't clear about that. The examples I gave were intentional because everyone knows that those kinds of questions are very unlikely to be homework-based, the notable exceptions being advanced polymorphism in C++ and some kernel-space C. As a general rule, I don't like code dumping, homework or not, except when dealing with porting stuff between OSes and obfuscation amusements.
 

itmoba

Reputable
Aug 14, 2015
768
0
5,360


For articles? Yes. The core areas of focus in articles ought to align with the central paradigms of today, meaning

{*} HTML/XML/CSS/JavaScript,
{*} C/C++,
{*} Java (for Android),
{*} C#,
{*} Objective-C/Swift,
{*} Perl, Python, PHP, and Ruby.

This is basically the top 10 languages reported by TIOBE (whom I find to be very credible), albeit slightly modified. Some examples of the modification include the removal of Visual Basic (which I think is completely worthless, mostly because hardly anyone in the software industry uses it), the addition of Ruby and Swift, and the grouping of certain languages together, like, tossing HTML, XML, and CSS into the JavaScript category.

The main problem, however, with Objective-C is that Apple has unfortunately decided to lead a crusade against its own creation and is now peddling Swift instead, as it's VERY similar to JavaScript. I remember reading the manual when the first version of Swift came out and after a few pages I thought, "okay, so Apple decided to copyright and patent JavaScript ('mostly'), but they renamed it to Swift." Despite this, I'm still an Apple and Linux fan.

Lastly, I think among some of the most important things to consider is that less and less programmers understand low-level interfaces, memory models, and threads because of the focus on languages with higher levels of abstraction and automatic garbage collection.
 
Yeah, like no one does Assembly these days (which is practically coding binary with just some readable words). But I don't think high-level languages are necessarily a bad thing, especially when it comes to stuff such as web design where an interpreted high-level language is basically a necessity.

If there's one language I do not like explicitly for syntax it's Python. I'm all for PHP.
 

itmoba

Reputable
Aug 14, 2015
768
0
5,360


Yup, I'm not much of a fan of Python's syntax either, though only with respect to its forced indentation. In my opinion, the programmer should be allowed to indent as they please. I mean, if you like the GNU coding convention, then, by all means use it (secretly, I think that someone needs to run a defrag on their brain if they use the GNU style). Personally, when I code in C I use a mixture of the Torvalds and BSD KNF stylistic conventions.

I think the next question is which programming languages, frameworks, and libraries we know well enough to write about. Me? I'm comfortable with C, C++, Objective-C, Java (older, like 1.4), Python, Perl (Perl 5, not 6!), PHP, JavaScript, Bash, Zsh, Ksh, and BASIC (of the VB and 'Q' dialects).

As I like to be as candidly frank (sometimes blunt) as possible, I'll be the first to admit that I'm not a good candidate for JavaScript because it tends to be rolled together with HTML, CSS, and XML. I'm not a web developer -- in fact, I hate writing webpages (server-side stuff is fine). I'd also remove myself from VB because I think it's a worthless language that's slow and buggy (normally my ideology doesn't get in the way, but in this case it certainly does).

Thoughts?
 
I'm expertise more on web development myself. I am good at structuring web pages, as well as the client-side Javascript. I do not rely on JQuery like everyone else these days, I only code in vanilla JS. If the time ever comes when I need JQuery, I'll use it, but I manage a website now which involves collecting fictional cards and battling with them against others online. It involves a ton of client-side Javascript which interacts with the server-side PHP and MySQL database, so that's where a ton of my experience comes from. Too many people rely on frameworks these days where it is unnecessary. That's one of my issues with Stackoverflow. I fully understand that in C languages you practically have to use the .Net framework, but when I see that every Javascript question online involves a framework, when these people could be doing things more efficiently, I get mad. Sometimes these frameworks can be more complex to use that raw JS IMO. I know there are many people who use frameworks and don't understand a rat's behind on how it works, and I personally refuse to use a framework until I know more well how the insides and outs work.

I started learning basic block programming (non-text coding) on http://scratch.mit.edu when I was younger, then on Codecademy learned web design basics (they only really teach the basics and syntax). The best way for me to learn was by actually applying my knowledge and making something I have a passion for. You're not going to get much out of learning Javascript and creating objects for salesman in cities - it's frankly boring. But once I found a website I wanted to make, I have put months of HTML/CSS/JS and PHP work into my site, and am all the more experienced.
 

itmoba

Reputable
Aug 14, 2015
768
0
5,360
I started out with QBASIC and moved on to C. My fascination began the moment I started playing "Sammy" (a "Nibbles" / "Snake" clone) in the very early 90's, so I was, like, "holy crap! this game is awesome... I wish I could make it myself". Thus, I did. I didn't get into assembly until high school, and when I did it was for the M68000 (for my Ti-89 graphing calculator). From C I went to C++ and then went back to C after a few years, throughout which I realized (1) that debugging for C++ took more time than it really should because of name mangling, (2) most of the C++ programmers relied upon polymorphism and inheritance, and (3) more than 80% of them relied on Boost. That's not to say that C++ is bad; rather, it's simply one of my pet peeves -- that's all, and nothing more.
 

Charles A Peirce

Reputable
May 19, 2015
26
0
4,560


<hint_hint> So, are you looking to hire someone with a lot of programming experience? </hint_hint>
 

itmoba

Reputable
Aug 14, 2015
768
0
5,360
As turkey3_scratch and I have stated above, we don't mind the pro bono service.

From a purely business perspective, it's natural to not create a new Tom's section for programming involving paid editorials and whatnot without using the forums as a trial first. If the programming forums section grows and flourishes in a significant manner, then, that'll likely be the time that staff might consider hiring independent contractors to write submissions. This, though, is purely personal opinion and doesn't reflect the opinions and actions of the moderators and staff.
 

Titillating

Expert
Ambassador
Hey guys, sorry for my lack of updates on this. I've made the higher ups aware of the interest in this and it's something they're open to pursuing. As this is not really something that Tom's Hardware really focuses on, it's taking some time to decide on how best to integrate this into the existing community. Our resources are also stretched pretty thin at the moment, working on a major project on Tom's Guide and addressing all kinds of little bugs that continue to pop up.

A programming forum section will likely be added and we'll do our best to get it done, but it is not likely to happen in the next month or two.
 


Awesome!
 

itmoba

Reputable
Aug 14, 2015
768
0
5,360


As happenstance would have it, I've known of a few bugs lurking in the code of the forums for quite some time. I simply never brought it up because I didn't really know how to address them to the proper person. Which glitches (general and specific) I've found, however, I cannot relate on the forums in a public manner (including, but not limited to, moral, ethical, legal, fiscal, and personal reasons). Sure, it's possible to contact via webforms, but in my personal experiences I've found the majority of messages to be filtered and/or ignored.