Programming

52K

Solutions

40K

Contributors

Programming includes both the specifics of the language you’re using, like Visual Basic, .NET, Java and others, but also the best practices in user experience and interfaces and the management of projects, version control and development. Other programming topics are related to web and cloud development and system and hardware programming.

Share tech news, updates, or what's on your mind.

Sign up to Post

3
Optimize your web performance
LVL 1
Optimize your web performance

What's in the eBook?
- Full list of reasons for poor performance
- Ultimate measures to speed things up
- Primary web monitoring types
- KPIs you should be monitoring in order to increase your ROI

onsite-native-ad-360x200.pngThis summer is the perfect time to add a programming language to your resume with, course creator, Mark Lassoff’s help. Build a solid foundation for a career in web development by learning and getting certified in HTML5 . Enroll in July’s Course of the Month to get started today!

2
Want to learn HTML? We’re featuring the HTML5 Specialist Certification Course as our July Course of the Month!  Premium Members, Team Accounts, and Qualified Experts unlock free access to this course, and are eligible for the certification exam once the course has been completed. Get started today!
3
Premium Members & Qualified Experts,

Get HTML5 Certified in July’s Course of the Month

https://www.experts-exchange.com/articles/30614/Get-HTML5-Certified-in-July-s-Course-of-the-Month.html
3
 
LVL 4

Expert Comment

by:Christ Harold
I have already enrolled and looking forward to complete the certification. Thanks for the update
2
This article tells an interesting tale of the early days of AI and going back to coding after ~30 years as a CEO.

https://www.linkedin.com/pulse/over-50-years-coding-still-going-tom-kehler

Yes that is my father :)
8
 
LVL 6

Expert Comment

by:Brian Matis
What a fantastic journey! Congrats to your father on his successes and contributions to the field. And for still going strong with continuing to learn. Inspiring!
1
For you the  Machine Learning fans.Microsoft Cortana Speech Recognition Now Allows You To Dictate Text In Office Apps (video):

http://flip.it/NkmwBv
6
6
 
LVL 26

Author Comment

by:ProfessorJimJam
True
0
 
LVL 1

Expert Comment

by:Juana Villa
<3 FREE <3
0
This is so cool! I've already gone through some of the sections in Apple's Swift Playgrounds app and loved it, but this new support for programming robotic toys looks even more amazing and fun. Great way to get kids learning programming at an early age. (Ok, who am I kidding... I want this for myself!)

Any of you check out the Swift Playgrounds app or have any of these robots? Are you teaching your kids to program?
8
 
LVL 1

Expert Comment

by:Juana Villa
That is awesome! I did not know about it. I will definitely learn more about it to show it to my nephews and nieces.
2
This is an amazingly simply way to make an Electron desktop application from a webpage. I love it :D
3
 
LVL 6

Expert Comment

by:Brian Matis
And I wonder if it works with browser notifications? Those notifs can be pretty handy for something like Hipchat.
0
 
LVL 9

Author Comment

by:Brandon Lyon
Electron has a notifications API so it could probably work if one decided to add that. I can't tell if Nativifier does that or not and I haven't tried yet.
1
Here's an interesting coding puzzle:

A trader can perform two buys and two sells in a day of a given stock. An array of positive integers represents the share price of this stock at different times of the day (index i = 0 represents hour 1, i=1 represents hour 2, etc). The trader must always sell any current shares he has before he buys more shares. Write a function that determines the maximum profit the trader can make by buying and selling stock for a given day.

int maximizeProfit(int[] prices) {
   // Your code here
}

ex:
[10, 22, 5, 75, 65, 80]
The maximum profit is 87: buy at 10 sell at 22, buy at 5, sell at 80.

Open in new window


The solution should have time complexity O(n).
2
Get HTML5 Certified
LVL 9
Get HTML5 Certified

Want to be a web developer? You'll need to know HTML. Prepare for HTML5 certification by enrolling in July's Course of the Month! It's free for Premium Members, Team Accounts, and Qualified Experts.

This is awesome! Minecraft is already a great game, and now it can help kids learn how to code. I'm bummed this is only in the Education Edition right now, but hopefully it'll get into the normal edition sometime soon.

I also wonder what sort of new things people will create in Minecraft as a result of this... I was once building a massive suspension bridge, but it got pretty tedious and repetitive. Seems like programming a bot to carry out the construction would have been a fun project!
7
5
 
LVL 6

Expert Comment

by:Brian Matis
Nice! Thanks for the tip :-)
0
4
 
LVL 6

Expert Comment

by:Brian Matis
Wow... That's horrible; but I also admire the genius of those that figured this out...
0
Is Java a terrible first programming language to learn? Do you agree with Stanford switching their intro course to JavaScript? Or would you have picked something else?

https://thenextweb.com/dd/2017/04/24/universities-finally-realize-java-bad-introductory-programming-language/#.tnw_AFXiESVy
2
 
LVL 10

Expert Comment

by:Jeffrey Dake
I definitely think there is something better to start with than Java, but not sure JavaScript is the answer.
1
 
LVL 6

Author Comment

by:Brian Matis
I imagine the appeal of JavaScript is how you can run it in a browser and don't need to worry about dev environment setup or learning a command line to get started.

What language would you choose, Jeff?
0
I just recently picked up the Humble Bundle for several Python programming eBooks. Great set of books for a really low price; can even get the basic set for as low as $1! If you've ever been thinking of learning Python, this is a pretty unbeatable deal. (I even already had a hard copy of Automate the Boring Stuff with Python but getting the eBook version as well is extra nice.)

Act fast though, less than four days to go for this deal!

(And no, I'm not even trying to get a referral bonus on this, I just think it's an awesome offer you should check out! Although, as you learn Python, I'd certainly love to have you participating in Expert Exchange to get support from the community as you run into problems or to share your accomplishments ;-)

Happy learning!

https://www.humblebundle.com/books/python-book-bundle
3
In discussions about what programming languages to learn, the usual suspects are generally things like Java, C++, PHP, Python, & JavaScript. Usually no one mentions a classic like COBOL, but perhaps it's time to rethink that?

https://thenextweb.com/finance/2017/04/10/ancient-programming-language-cobol-can-make-you-bank-literally/
1
 
LVL 5

Expert Comment

by:Gene Richardson
Cobol and Fortran were my first programming languages and helped make my decision to switch my college major from Electrical Engineering to Computer Science.  Some of the companies I have worked for in the last ten years still have large implementations of Cobol code.  Based upon the article, I guess I may still have some work I can do when I start collecting that Social Security check :).
1
 
LVL 27

Expert Comment

by:tliotta
COBOL was fundamental to my first professional programming job back in the early 1970s. This struck me as interesting while thinking how good my pay was in those years with COBOL, and now the pay is becoming even better, perhaps even improving for a couple decades to come. The 'pay' curve could be fun to work out by the time COBOL is gone.

As with most languages, well written COBOL might not be the most common found, and poorly written COBOL is probably easy to find. I'm pretty sure I'd feel a little embarrassed to analyze some programs I wrote 40 years ago. I know that COBOL modules that I've written in the past decade is much better quality. It hasn't been a major part of my programming work, but there've been a couple specific projects where COBOL simply did the job best. (I'm not sure how many different languages I've needed to learn in my career.)

Makes me smile to think that in a few years there might be COBOL code of mine that's still active over a half-century span.
1
Here's an interesting brain teaser / programming puzzle I learned the other day. The answer can be achieved with a single line of code with computational complexity better then O(n).

N is a number that represents n boxes and n workers. All boxes are initially closed. Worker 1 goes through and toggles every box open. Worker 2 goes through and toggles every 2nd box (closed if open, open if closed). In the end, every worker i ⊂ N  has toggled every ith box opened or closed. Print the boxes that remain open at the end.

public void printOpenBoxes(n)
{
   // Implementation here
}

Open in new window

2
 
LVL 6

Expert Comment

by:Brian Matis
Fascinating! So, I'm curious, though... Did you figure this out via the underlying math of the situation, or by doing it the hard way and noticing the pattern in the results?
0
 
LVL 9

Author Comment

by:James Bilous
I saw the answer before I could figure it out. I just thought that it was a good lesson that you should always consider a simpler version to a problem before you waste a bunch of time diving too deep into a solution that is over complicated
0
I remember this like it was yesterday, being in a new position.  It always helped to try something and improve on that until it became well streamlined.

Coming into a new position expecting the work to be the same as you were taught in school or experienced it in your last position is problematic, said Gene Richardson, COO of Experts Exchange. "Each company is different, and each company will implement or code their own technology solutions," Richardson said. "Essentially, you need to drop all old habits and approach the job with an open mind while trying to both embrace and understand why they do what they do. Once you are there for at least 90 days, you can then start making suggestions on how things could be improved. Be sure you know what you are talking about and can back your stance up with facts."

http://www.techrepublic.com/article/10-bad-habits-to-break-if-you-want-to-become-a-great-developer/
5
image.jpeg I know a lot of programmers who still have a hard time with abstraction. I wonder if this helps.
4
Technology Partners: We Want Your Opinion!
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Ran across this article a while back.  http://stevehanov.ca/blog/index.php?id=132 . I have been wanting to try it out for a while now. It looks like a great way to do A/B testing.
2
As most of us in tech know, issues that seem like "simple" changes or problems are often anything but. Blizzard Entertainment, the developers of such games as World of Warcraft and Diablo, once wrote a fantastic blog post that went way in-depth to some of the complicated functionality behind such a "simple" thing as the damage numbers that appear in Diablo III.

What are some of your stories about "simple" things you've encountered that were much more complicated than they might appear?
4
This development represents an important step forward in AI research, away from mastering tasks like voice,image recognition, and translation, and towards a more nuanced and collaborative AI that adopts a human-like method for decision-making.

Cool competition.  However, if I was capable at creating such AI, I wouldn't do it for $20,000.  I'd sell this AI to the highest bidder!

http://www.techrepublic.com/article/microsoft-competition-asks-phd-students-to-create-advanced-ai-to-play-minecraft/?ftag=TRE684d531&bhid=27457961240876229835964102892079
7
 

Expert Comment

by:ModeIT
for the original? I find that almost hard to believe now.. I used to have a crap load of the maps. I wonder if I saved them along with the game CD. I should rip the CD on for a virtual drive so I can play without it and try to boot an old PC for the game maps..


never did play SC2 :/ it was laggy on my laptop of the time, though my current one should be fine, I wonder what I'd have to pay for a copy now a days
0
 
LVL 16

Author Comment

by:Kyle Santos
Nice.  Yeah, BN is still very much alive.  http://us.battle.net/sc2/en/
I played the full campaigns of SC2.  It was satisfying to finally get the ending of the story.  I thought it was worth it.

You should still have the maps if you haven't wiped your OS or saved the map files on a USB thumb drive haha

CD on for a virtual drive
This.  SO MUCH.
0
I've been really interested in recommendation systems lately which has lead my down a few rabbit holes. One of these landed on a similarity measurement called Jaccard similarity which is a fairly straightforward metric for communicating how many elements two sets have in common.

This turns out to be very difficult to compute without some tricks but can be estimated with a certain degree of confidence using minHashing. If this sort of thing interests you I would check out this blog post by Chris McCormick - its one of the best explanations I came across (even though its in the context of document similarity). There is even some python code provided.

I would summarize the technique in one sentence as: by randomly shuffling the union of two sets and looking at the first element in the new, shuffled set, the probability that it is an item belonging to their intersection is equal to the Jaccard Similarity.

http://mccormickml.com/2015/06/12/minhash-tutorial-with-python-code/
5
Yesterday was Pi Day, and Experts Exchange held a little contest in honor of all things pi! Take a moment to read through the Pi-ku entries and leave your favorite in the comments.
7
 
LVL 70

Expert Comment

by:garycase
As a mathematician, I have to go with Doug W's => he satisfied the requirements (# of syllables) with one word for each line, and did it with words relevant to pi :-)
4
 
LVL 6

Expert Comment

by:Brian Matis
Good point Gary, that one is pretty clever. :-)
0
When I went to school to get my degree in SE I had the importance of Java Docs beaten into me on a daily basis. Now that I am in industry, I find that Java Docs are the last place I look - instead opting for Q&A sites or google searches for blog articles due to the specificity of the problems I come across.

I was never encouraged to do this sort of research in practice, in fact, it was often discouraged. There definitely seems to be a disconnect in school professors and their outdated methods and actual industry practices. Maybe in schools that are research oriented this is better since engineering professors are actively working in their field, but at my public university I had professors who were perplexed by syntactic sugar that is now common place such as the
for ( x : y )

Open in new window

loop.
5
 
LVL 9

Author Comment

by:James Bilous
I had an interesting situation where I earned my BS and MS in computer science from the same university in a blended program ( I earned both degrees at the same time ). My school prided itself in project based learning, in fact the motto of the school was "Learn by Doing". I definitely got a great education because of this philosophy and most of the professors were great, but the ones that taught fundamentals (read 101, 102, 103 programming courses) were absolutely horrific.

By the time I hit graduate level coursework the professors were, again, fantastic. These were all instructors who were very active in industry and research and many had side companies they worked on. I think the critical missing piece from the earlier instructors was their lack of participation in the real world. Of course, all of these professors were tenured, so that should tell you something.
3
 

Expert Comment

by:Daniella Barion
I believe that when we study the theories, we can develop better and also discuss and bring new contributions.
2

Programming

52K

Solutions

40K

Contributors

Programming includes both the specifics of the language you’re using, like Visual Basic, .NET, Java and others, but also the best practices in user experience and interfaces and the management of projects, version control and development. Other programming topics are related to web and cloud development and system and hardware programming.