Ruby Interview | Ruby on Rails
468 subscribers
14 photos
2 links
The Ruby Interview channel is a resource for preparing for Ruby developer interviews.

It features questions, problem-solving solutions, and interview tips.
Download Telegram
๐Ÿ”ฅ Battle City 3 โ€” a game thatโ€™s growing more popular every day

๐ŸŽฎ Online seasons, tank selection, and awesome rewards: grenades, enemy freeze, extra lives, and more

๐ŸŒ New online levels are added regularly โ€” there's always something fresh to play!

๐Ÿ“ด Prefer offline? Enjoy 12 levels with selectable difficulty

๐Ÿ“ฒ Download now and jump into the battle!
๐Ÿ‘‡๐Ÿ‘‡๐Ÿ‘‡
https://battlecity.udfsoft.com?from=tg_rubyI
https://battlecity.udfsoft.com?from=tg_rubyI
1๐Ÿ’ฉ6๐Ÿ”ฅ2
What will this code output?

puts "apple" < "banana"
Anonymous Quiz
59%
true
17%
false
4%
nil
19%
Error
What is the result?
What is the result?โ˜๏ธ
Anonymous Quiz
23%
[1, 2, 3]
73%
[1, 2, 3, 4]
1%
nil
3%
Error
Which HTTP method is used to partially update a resource?
Anonymous Quiz
14%
PUT
78%
PATCH
8%
UPDATE
0%
POST
Which status code means unauthorized access?
Anonymous Quiz
83%
401 Unauthorized
17%
403 Forbidden
1%
404 Not Found
0%
400 Bad Request
๐Ÿ” Understanding Ruby Blocks, Procs, and Lambdas

One of Rubyโ€™s most elegant โ€” yet initially confusing โ€” features is its support for blocks, Procs, and lambdas. Mastering these is key to writing idiomatic and powerful Ruby code.

๐Ÿงฑ What is a Block?
A block is an anonymous piece of code that can be passed to a method.

def greet
yield
end

greet { puts "Hello from the block!" }
# => Hello from the block!


If you call yield without a block, Ruby raises an error โ€” unless you check with block_given?.

๐ŸŽ What is a Proc?
A Proc is a block saved into a variable.

say_hello = Proc.new { puts "Hello!" }
say_hello.call
# => Hello!

You can pass Procs to methods, return them, and store them โ€” like any object.

๐Ÿง  What is a Lambda?
A lambda is a special kind of Proc with stricter argument checking and different return behavior.

greet = lambda { |name| puts "Hello, #{name}!" }
greet.call("Rubyist")
# => Hello, Rubyist!


Key differences:
- lambda enforces argument count (unlike Proc)
- return in a lambda exits only the lambda; in a Proc, it exits the method it's called from

๐Ÿ†š Proc vs Lambda: Subtle but Important

def test
proc = Proc.new { return "From Proc" }
proc.call
return "After Proc"
end

puts test
# => "From Proc" (method exited early)

def test_lambda
l = -> { return "From Lambda" }
l.call
return "After Lambda"
end

puts test_lambda
# => "After Lambda" (lambda returned only from itself)


โœ… When to Use What?
- Use blocks for simple callbacks or iteration (e.g., each, map)
- Use Procs when you need to store logic to reuse
- Use lambdas when return behavior and argument count matter

๐Ÿ”น Learning to use blocks, Procs, and lambdas fluently is a big step toward writing expressive Ruby code.

#rubyonrails #codingtips
1๐Ÿ”ฅ16๐Ÿ‘2
What does this code output?

puts "๐Ÿ‰" * 3
Anonymous Quiz
4%
๐Ÿ‰3
88%
"๐Ÿ‰๐Ÿ‰๐Ÿ‰"
1%
"3๐Ÿ‰"
8%
Error
1๐Ÿ‘2๐Ÿ˜ฑ1
Which header controls cross-origin resource sharing (CORS)?
Anonymous Quiz
8%
Authorization
3%
User-Agent
87%
Access-Control-Allow-Origin
2%
Content-Length
Whatโ€™s the main drawback of monolithic architecture in Ruby on Rails applications?
Anonymous Quiz
2%
No database support
64%
Harder to test small parts of the system
30%
Ruby cannot scale monoliths at all
4%
Controllers cannot talk to models
Forwarded from Android frameworks
๐ŸŒก WiFi Temperature Sensor (ESP32 + DHT11)

A simple IoT temperature and humidity sensor based on ESP32-C3 and DHT11.
The device measures temperature and humidity, sends the data to a backend server, and from there it can be forwarded, for example, to a Telegram bot.

https://github.com/UDFSoft/Wifi-Temp-Sensor/
1๐Ÿ‘2โค1๐Ÿ‘1
What will this code print?
puts "2 + 2 = #{2 + 2}"
Anonymous Quiz
4%
2 + 2 = 2 + 2
3%
2 + 2 = 22
93%
2 + 2 = 4
1%
Error
Which header is used to send authentication tokens in REST APIs?
Anonymous Quiz
8%
Content-Type
1%
Accept
89%
Authorization
3%
Cookie