Which laptop is best for software engineering, programming and hacking?

I need a strong laptop for educational purposes. I've heard about Toshiba satellites, Alienware and Macbooks. Strong processor, nice graphics is optional, large memory capicity and fast performance.
Thank you.

Added (1). I work especially with C, Python, Assembly and client-side scripting, no iOS apps yet.
The OS I want to work in is Windows or else Linux. I heard alot of cons about Alienware though, don't know if there are true.
Also, I prefer 15'' upon 17'' screen, but that is not the biggest issue. I look for fast performance, 1TB memory, best processor.

Well I recommend the Lenovo IdeaPad Y510p 59388313 15.6-Inch Laptop (Dusk Black).
http://www.amazon.com/...00F32ZBN6/

Plays Like An Athlete, Works Like A Pro. If you're looking for a feature-rich laptop that's good for high-performance multimedia, extreme gaming, and other graphics, audio and processor intensive applications, look no further than the IdeaPad Y510p. It's the high-performance notebook with looks to match. Sporting a brushed metal exterior and interior, including a backlit keyboard, the IdeaPad Y510p combines an impressive design with the latest 4th Gen Intel Core processor, discrete NVIDIA graphics and premium JBL designed speakers making this a true multimedia powerhouse. And if that's not enough, you can add even more with the unique UltraBay - an interchangeable bay that can be swapped out for dual graphics capability, increased storage or an additional fan for cooling.

-Dual NVIDIA GeForce GT750M Discrete graphics (SLI) with 2GB dedicated DDR5 VRAM - supports the latest DirectX 11 games and HD video editing
-Dolby Home Theater v4, for full impact surround sound with premium JBL speakers
-Ultrabay: an interchangeable bay that can be instantly swapped out for dual graphics capability (2nd graphics card included in Ultrabay), DVD/Blu Ray drive, increased storage space or an additional fan for cooling (DVD/BluRay drives and storage options sold separately)
-Integrated 720p HD webcam and a dual digital array microphone for crystal clear webchat
-Intelligent TouchPad, optimized for Windows 8 with easy scroll, zoom and rotate functions
-HDMI out, two USB 2.0 ports, one USB 3.0 port
-Lenovo Energy Management minimizes power use and protects battery life

-Intel Core i7-4700MQ 2.4 GHz Processor (6 MB Cache)
-8 GB DDR3 RAM
-Bluetooth Version 4.0, 1 TB 5400 rpm HDD and 8 GB Solid-State Drive Memory
-Non-Touchscreen 15.6-Inch Display, Dual NVIDIA GeForce GT750M Discrete Graphics
-Windows 8, 4-hour battery life

I'd go with an Asus laptop or a Macbook. I'm an animator and I would recommend a Mac, it is best in my opinion for this type of thing and all large corporations use them. Macs are also found a lot in the software engineering. Even Microsoft use Macs in the development of their products. Its just I find Macs reliable, safe, simple and every thing I need is there. Alienware use to be good till Dell took over, Now they use shoddy cheap parts. But depending on your budget I'd go with a Macbook pro if you can afford it even if you don't like OSX, at least it will work, it performs very with the hard ware communicating with the software. Or go with an Asus model laptop since a lot of other brands don't go with quality and performance. And Macs are used in pretty much every industry. You should be looking for 4GB RAM or more( 8GB maybe?), intel 5 I would recommend and an SSD. Its what ever floats your boat and your budget.
Just not Dell/Alienware

Your budget? If you don't care about weight and looks, business laptops are a great choice, especially "mobile workstations". Not only they're typically built as tanks, they can be serviced.

You should also ask at your school which OS they recommend, Macs are non-existent in software engineering, except where they develop iOS apps (Apple forbids to use anything else), and web development (because artists are eternally loyal Mac fans).